我正在开发一个必须打印标签的应用程序.我正在使用的标签打印机是Brother QL-570.标签宽度为66mm,标签长度约为45mm.我遇到的问题是我无法配置应用程序来实际打印标签.每次我这样做,我都会收到一条警告,说明打印机的文档尺寸太大.无论我尝试将PrintDocument尺寸更改为什么尺寸,我都会收到警告,说明文件尺寸为90mm x 29mm且对于标签打印机而言太大.
这只是我的一次尝试:
private PrintDocument label;
label = new PrintDocument();
PaperSize pS = new PaperSize("Custom Size", 212, 67);
label.DefaultPageSettings.PaperSize = pS;
label.PrinterSettings.PrinterName = "Brother QL-570";
label.PrinterSettings.DefaultPageSettings.PaperSize = pS;
label.PrintPage += new PrintPageEventHandler(label_PrintPage);
private void label_PrintPage(object sender, PrintPageEventArgs e)
{
SolidBrush brush = new SolidBrush(Color.Black);
Font header = new Font(FontFamily.GenericSansSerif, 12.0F, FontStyle.Bold);
e.Graphics.DrawString("Hello World", header, brush, 30, 30);
}
Run Code Online (Sandbox Code Playgroud)
有谁知道我哪里出错了?我想我可能错误地设置了文档和打印机的纸张尺寸.我尝试了很多其他纸张尺寸但无济于事.
谢谢你的帮助.
我试图使用"表单集成"方法将SagePay支付网关集成到网站中.
基本上,表单集成方法的工作原理是,只要选择了FORM的Submit按钮,就可以在网页中插入FORM并将信息发布到SagePay的服务器.在将信息发送到SagePay的服务器之前,必须使用AES/CBC/PKCS#5算法对其进行加密,然后再进行Base 64编码.
我有加密的基本知识,但我没有在PHP中使用它的经验.有谁能帮我用PHP制定AES/CBC/PKCS#5算法?
到目前为止,这是我的努力:
$CRYPT = "Text Goes Here";
$blocksize = 16;//Does 16 Refer To 16 Bytes Or 16 Bits? 16 Bytes = 128 Bits.
$cryptLength = strlen($CRYPT);
$cryptLengthModuloBlocksize = $cryptLength % $blocksize;
$pad = $blocksize - $cryptLengthModuloBlocksize;
$padString = str_repeat(chr($pad), $pad);
$CRYPT = $CRYPT . $padString;
$encryptionPassword = 'password';
$Encrypted_CRYPT = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $encryptionPassword, $CRYPT, MCRYPT_MODE_CBC);
$Base64_Encrypted_CRYPT = base64_encode($Encrypted_CRYPT);
echo "<form action = 'https://test.sagepay.com/gateway/service/vspform-register.vsp' method = 'POST'>
<input type = 'hidden' name = 'VPSProtocol' value = '3.00' />//
<input …Run Code Online (Sandbox Code Playgroud)