编辑7:我终于成功了!贴出答案。
编辑 6:我废弃了 CSS 和 div 并使用了报告服务。查看帖子下方的编辑以了解我现在的位置。
我现在完全迷路了。
抱歉,如果我的问题不够清楚,我可以根据需要对其进行编辑以添加信息。我会尽量提供尽可能多的信息。
我已经在谷歌上搜索了几个小时,但没有找到任何可以帮助我的东西。
我正在尝试使用我在数据库中的用户信息创建多个“标签”,并将它们放在页面上以打印它们。另外,我每页只需要 1 个标签。
我得到了一个存储过程,它返回给我用户名、姓名和姓氏以及我用来在特定事件中为每个用户生成条形码的 ID。
CREATE PROCEDURE Schema.GetAllTags
@IdEvent int
AS
BEGIN
SELECT Mem.Nom, Mem.Prenom, Mem.Pseudo, Use.IdUser
FROM Schema.User Use
JOIN Schema.Member Mem ON Use.IdMember = Mem.IdMember
WHERE Use.IdEvent = @IdEvent
END
条形码是通过调用一个 asp 页面并给它我从页面参数中存储的过程中收到的 ID 生成的。asp 页面是我用来在其他页面中显示我的条形码的图像。
我尝试使用 div、CSS、asp 内容和所有这些东西制作标签,并且它工作......除了打印部分。标签一直在调整大小,即使我尽一切努力使其成为 25.4 毫米(1 英寸),页边距也不是一英寸,并且在它上面,页面的 url 始终显示在预览打印中。客户只需取消选中显示网址并在选项中自己设置边距即可解决所有这些问题。但我不想强迫客户做这些来解决问题。我希望它是 3 x 2 英寸,边距为 1 且没有 url,而无需更改打印选项。
有人告诉我,使用报告服务可以解决我的打印问题。但是我不知道如何从报告服务中获得我需要的东西(我知道报告服务是什么)......更不用说如何让我的条形码在那里了。
在这里,标签在打印页面上最终应该是什么样子。3 英寸 x 2 英寸,打印时顶部和左侧边距为 1 英寸。
这是我用来尝试打印标签的 CSS:
<style type="text/css">
@page
{
margin: 25.4mm 25.4mm 25.4mm 25.4mm;
}
@media print
{
body *
{
visibility:hidden;
}
#tagPrint, #tagPrint *
{
visibility:visible;
}
#tagPrint
{
position:fixed;
top: 0px;
left: 0px;
}
#NOPRINT
{
display:none;
}
}
这里是asp(这是我的页面,只显示1个标签):
<asp:UpdatePanel ID="UpdatePanel1" runat="server" >
<ContentTemplate>
<div id="tag" class="formRow">
<div id="tagPrint" style="border:1px solid;width:76.2mm;height:50.8mm">
<p style="text-align:center" />
<br />
<asp:Label ID="lblUserTag" runat="server" style="font-weight:bold;font-size:18px" />
<br />
<asp:Label ID="lblFullNameTag" runat="server" style="font-weight:bold;font-size:16px" />
<br />
<br />
<asp:Image ID="imgBarcodeTag" runat="server" />
<br />
<asp:Label ID="lblIdTag" runat="server" style="font-weight:bold;font-size:16px" />
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
目前在我的页面上使用转发器生成我的标签以生成多个标签并将 dataset.tables[0].Rows 绑定到转发器。允许我创建这些标签。
有什么方法可以在不使用仅使用 javascript 和 CSS 的报告服务的情况下做到这一点?报告服务是否可行(在报告服务中使用 asp 页面制作条形码)?由于我的条形码来自字体,有没有其他方法可以在计算机上添加字体以便在报告服务中使用它?(我不希望客户端必须安装字体)制作标签的 pdf 会更容易/更好吗?
编辑:开始使用报告服务。现在我得到了用 4 个参数制作的报告。(用户名、全名、条形码 url 和 ID)我会更新接下来会发生什么。
编辑2:所以......在设法制作报告服务并将其显示在页面中之后。我似乎无法让我的图像显示在报告上。即使我这样做了。我不知道如何在报告上制作多页或如何打印。我决定尝试以 PDF 格式制作我的 Div Tag 并尝试以这种方式打印。明天有机会尝试更新。
编辑 3:除了想把我的头砸在墙上几次之外,我尝试用 PDF 做它,但它不起作用。发现它可能可以在 Flash 中完成,但我不想在 Flash 中完成。所以我回到了报告服务。我使用网格创建了一个报告服务,我将数据集发送到网格并将数据放在每个字段中。我安装了字体以便能够在报告中使用它。现在我似乎无法将我的数据集绑定到报告。我尝试了 SqlDataSource 和 ObjectDataSource,但似乎没有任何效果。我在一个新项目中开始了另一份报告,以尝试从废品中提取。也许我当前项目中的某些东西正在与我作对。我快要放弃了。-_-
编辑4:我终于让它开始工作了。让我的页面上的报告工作得很好。
现在我唯一要做的就是设法让报告有多个页面。
编辑 5:重读我的编辑,我意识到在编辑 2 之后我忘了说,我放弃了参数的东西,而是使用了一个数据集。此外,我放弃了有关 CSS 和 div 的所有内容,以使用报告服务来保存标签的 PDF 文件。