1
創建一個可與皇家郵政獲得標籤代碼,並試圖打印出來的標籤的應用程序。在他們的文檔了「printLabelResponse」包含在一個Base64字符串中的PDF,他們舉了一個例子:解碼Base64編碼字符串不加載PDF格式
JVBERi0xLjYKJeTjz9IKMSAwIG9iagpbL1BERi9JbWFnZUIvSW1hZ2VDL0ltYWdlSS9UZXh0XQpl
bmRvYmoKNCAwIG9iago8PC9MZW5ndGggNSAwIFIKL0ZpbHRlci9GbGF0ZURlY29kZQo+PgpzdHJl
YW0KeJwDAAAAAAEKZW5kc3RyZWFtCmVuZG9iago1IDAgb2JqCjgKZW5kb2JqCjYgMCBvYmoKPDwv
+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncA
AQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6
Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeo
MCBSCi9JbmZvIDMyIDAgUgovSURbPDZDM0VCNEREOEE2OTNEMTVDQUE4NkRCODJCNTc2MTIzPjw2
QzNFQjRERDhBNjkzRDE1Q0FBODZEQjgyQjU3NjEyMz5dCj4+CnN0YXJ0eHJlZgoxMzI1OTYKJSVF
T0YK
下面的代碼是什麼我使用,然後創建PDF文件(base64Text是從上面的 Base64編碼字符串)
string filePath = Directory.GetCurrentDirectory() + @"\output_PDF.pdf";
byte[] base64TextBytes = Convert.FromBase64String(base64Text);
File.WriteAllBytes(filePath, base64TextBytes);
我已經轉換其他的PDF文件轉換爲Base64編碼字符串,並將其保存到一個文本文件,然後複製粘貼文本到SOAP/XML文件中,即時通訊本地閱讀,模擬的「標籤」標籤從皇家郵政消息,並設法保存此爲它成功打開一個PDF。
從我的代碼從上面的base64字符串輸出爲:
%PDF-1.6
%����
1 0 obj
[/PDF/ImageB/ImageC/ImageI/Text]
endobj
4 0 obj
<</Length 5 0 R
/Filter/FlateDecode
>>
stream
x�
endstream
endobj
5 0 obj
8
endobj
6 0 obj
<</Length 7 0 R
/Filter/FlateDecode
>>
stream
x�3P0P0��P016R032219 00000 n
0000032743 00000 n
0000103489 00000 n
0000103467 00000 n
0000105070 00000 n
0000104685 00000 n
0000105419 00000 n
trailer
<</Size 47
/Root 46 0 R
/Info 36 0 R
/ID[<3EE4406240B0CAF52A875D8627BD8575><3EE4406240B0CAF52A875D8627BD8575>]
>>
startxref
105491
%%EOF
然而,這在Adobe Acrobat閱讀不會開放,它不會打印。
這是Base64編碼字符串不正確還是我讀它不正確,或者其他什麼東西? 非常感謝
謝謝您的確認。希望這可以幫助任何人使用RoyalMail API進行標籤打印。希望它只是一個在docs那畸形。 – ThatUser