我在使用Base64编码png图像然后与HTML字符串连接时遇到问题。
当我将编码的图像打印到AS的日志中时,我会完美地获得所有字符串,但是如果我像下面这样连接(htmlToPDF变量),则我在Log中看不到所有字符串。似乎是截断的。我不知道发生了什么。
public void gerarPDFOnClick()
{
Document document = new Document(PageSize.LETTER);
String NOME_ARQUIVO = "MeuArquivoPDF.pdf";
String pastaArmazenamento = Environment.getExternalStorageDirectory().toString();
File pdfDir = new File(pastaArmazenamento + File.separator + NOME_PASTA);
if(!pdfDir.exists())
{
pdfDir.mkdir();
}
File pdfSubDir = new File(pdfDir.getPath() + File.separator + GERADOS);
if(!pdfSubDir.exists())
{
pdfSubDir.mkdir();
}
String nomeCompleto = Environment.getExternalStorageDirectory() + File.separator + NOME_PASTA + File.separator + GERADOS
+ File.separator + NOME_ARQUIVO;
File outputFile = new File(nomeCompleto);
if(outputFile.exists())
{
outputFile.delete();
}
try {
PdfWriter pdfWriter = PdfWriter.getInstance(document, new FileOutputStream(nomeCompleto));
/*Criar o ducumento para escreve-lo */
document.open();
document.addAuthor("Felipe Cardim");
document.addCreator("Criador");
document.addSubject("Obrigado por ajudar");
document.addCreationDate();
document.addTitle("Titulo uhuuuuu");
XMLWorkerHelper workerHelper = XMLWorkerHelper.getInstance();
bitmap.compress(Bitmap.CompressFormat.PNG,100,baos);
byte[] b = baos.toByteArray();
String encodeImage = Base64.encodeToString(b,Base64.DEFAULT);
String htmlToPDF = "<html>" +
"<head></head>" +
"<body>" +
"<h1>Aeeeeee</h1>" +
"<a href='https://www.facebook.com/profile.php?id=736342513'>Facebook</a>" +
"<p>huhuhuhuhuhuh</p>" +
"<img src=\"data:image/png;base64," + encodeImage + "\"" +
" height='42' width='42'/>" +
"</body>" +
"</html>";
Log.i("encode",encodeImage);
Log.i("HTMLTOPDF",htmlToPDF);
try {
workerHelper.parseXHtml(pdfWriter,document, new StringReader(htmlToPDF));
document.close();
Toast.makeText(this, "PDF esta criado!!",Toast.LENGTH_LONG).show();
mostraPDF(nomeCompleto, this);
} catch (IOException e) {
e.printStackTrace();
}
}catch (DocumentException e){
e.printStackTrace();
}catch (FileNotFoundException e){
e.printStackTrace();
}
}
这是“编码”的日志视图:
07-23 18:07:45.196 11455-11455/exportapdf.studio.com.exportapdf I/encode: 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
这是“ HTMLTOPDF”的日志视图:
07-23 18:07:45.196 11455-11455/exportapdf.studio.com.exportapdf I/HTMLTOPDF: <html><head></head><body><h1>Test</h1><a href='https://www.facebook.com/profile.php?id=736342513'>Facebook</a><p>huhuhuhuhuhuh</p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAYAAAA5ZDbSAAAABHNCSVQICAgIfAhkiAAAIABJREFU
eJzsvdmPJEly5vkztdv8do8z78qs6mvYB8nhzHAwwM4C87TAYv8l/knzuI+7WC7BIXuqSVYf1XXk
nXF4+G1ut6nqPqi6RWR2kWySfZDAWsGQEVER7m4mKqIi3/eJmKO11vwbPbTW3ZmWGfsyIy1z0nJP
XuXkdU7dtkglkVK+97euELiuiytcemFCEiYkQcIo7jOIevSjBFe4OI7Tnf8WD/H7/gD///HbPZx/
rR5cNTV121C3DUVdUDYVZVOhtTYehYNwHBxHIByHqq0pm4qqqSmb0vzbViilUEoZT7/z+sJ6pRCC
0AsI/ZDQC4iDiNAPiLwQAKUVittIoYHID4n8kDgICf2QwPMJPB/h/OvzF+/3/QH+vqNuG/Zlxr7M
We3XrPMdm2xrDWyM6rsenuvhuS5aKaQ2xmxlS6skrZLw9yxf1X2laWVL1VR4wmMnXIQQCCGQUtKo
llZKs1C0QmnNuDdknAyZ9EaMkgH9qIfvevCvMIr/qzVw1dbsij2LdM2b5Tsu1tdcrK+RSuEKF9cR
REFI6AeEfkAgPDzh4glh90tzCuEiHIFwxHv7qFTSGkyB1piVoGmUpFWKVkkbEUxUaGWLtIvofHzK
vYk5tdZ2H49/T3fqHz5+7wbelzlZlZOVObVskFIilaRsSsqmpmpMmPVcj16YkNUlVVtTNQ0q39mw
qXEBFwfXgVtXuhPGcd7zMGVDrtKKWzfXSA0SbT3c6baD0PcJvIDEiwg8H9BUTcUiXZGWey43c3zX
wxUunnDpRz16UUIvTHDF7y90/94NnFU519sF8+2CrMrt3lvjOqILwUorfNejF/Uo2paqzVkXe/Zl
RlGXlHWJVhKhFI5WH0RKx/ry+wY2mYdZHHcP5ThoR6CEIA5ioiAiDiJmvRGhH9ELEwLPR2tN3VQs
6oLGhnKzFweEXsDZ+JiT0RFxEOH+HnPZ37uBd8Wed6srvrp6yWq/MeVNlTPpjZj1x8z6YxTgez6D
uM+6zChkyyLfcbW5YZWuWaZrZF2CbEE2B+uZ49fJIe+WQJ4Prgeuz3QwZTqYMBtMiIKYiXDpx31C
PwQ0RV2yyjYs9+YMvYAkjEnChLqtCTyfo8HE7M+/p+N39s6HDLdqavK6MJ7XVKz2G4qqoBfGtnYt
KNuW692KVbbl1c07JBqpNK1WLPYbFvaGptmOqi7RWhEGIZHbI3Q9Qs8ncH181zMhGhAfJEBK211X
QyMbatnSyJZCNlSypWxb6qYiK1KEVnhaU5YZ63RN5Pl4joMnBI2U1Kqlli2+FxB4AcOoR902XKyv
yeuCftgjCkJiP+qy9NAPfidZ9+/MwFVjkqZtnrJIV6yzLetsiwMm/AYROz9E41DKhjRPKauCqipo
tdkTFY7Zr6uCvMopmoqqbdBKEUU9RkmfUdxnGPXphRFJEOO7LsIB9wOgQmqNUhqlIasLsqogqwvW
Wcq2SKnlnrqp2GtFU5fUdclmv+YiTPAcgYtGAFEYE4UxYRgz6g0JPJ9B3KNpay7W17xevGPcGzGx
57Q/ZhgPzD7+O8i6f2cGLpqKVbblervg5c0b3q2ueLe65Gx0xMPpOQ+n52yKPTiCvG14t55ztbri
anVFqxQIFxxhXE4rczoOCAGOIA5jpsMZZ+MTToYzpr0hk2RE6Ll4wsETznuhuJXKRAWlWWVb1vmO
Vb5DLC9ptGJXZtR1SV3mpFqxcBzz/o4w760UaMnp9Iwze55rCP2QSTzgerfkzeqSN6tLToYzHkzP
uT89RwOe6zGIe7i/g/v+WzXwJtuyyXdssh1ZZcCKuqlNBgvgCFb7LWVdcbG8Yr7fcJWuuU7XrIs9
hWzRwrWGEeA4DOI+wyhhGCUdyOB7PrPBlEl/wnQwZpIMGUQ9BnEPrSStbGhlw2227BAGAa7w8Vyf
QZQw6Q05LnNm8YCHo2PW+/sUdUHTtjSyYVvs2ZU5uzJHqdZ8Ju1QScm2zHB2K3whyIo98/U1tWzJ
6xKpNRoHpTVSSVb7NUWVc7W+ZtIfM06GjJIhnvvbMfdv18D5jlc3b3l58xYcxyBGXoBWqjPwMttx
sbqmrAp2VUFal6RNxb7MKdoGJVzQt3vVMBlwf3rCg8kpo7hPz49IgohhMqAX9ehHfXpR3CFNeVWQ
lXuyUqK0NlHRcUj82JYxPaq2oWhKirri3nBKVmRkZUZa5eR1SV5XvF5d8m49J2sqU1o5AIJStWyL
nFppqqpgvp7z0g9Joh5RZMK3dm4NvN5vuGpqqrbm0dF9nhw/oB/1/m0aeJlu+OLyBZ+++Ixh3Ods
fML5+ASpbw18s1vxev6G1/PXNBpwfZPJHqKp69mwbICI8WDMR6eP+YMHn3A+nDGJ+oyjHpEf4rk+
nufjuW5HJCzSFQutqaoSqWVX1w7CmFl/wtFgCmCQL9nStg3S/rsu9qzLjE2ZEbyOKaXkcrekUdJG
FYdSSsoiZV2kXLQ2i28bHp484NHJQx6dPII7HrxIV1xt5lxubsiqnDiIuD89J/wt2eA3buDVftOd
F+trtFbcn5xStTU36Yqr7dLAjnnKOk+52W/I2hrt+saIjgNa4bsm9PqezyjqmbAcJjw9ecijo3uc
9Kcc9SeM4z6TeIDnemDxZakkTdtSqIq6aQCzNyqtcCx44QoXpRRlU+G7Pq5wTeITRAY8UQrhBwg/
wHU9Pjq6h0AzihIW+w27yoTrsqlo2oambdAOJlfwHQrZsszMnl7WBTfbBW+WAwLXwxUODyaneMLj
anPDj5//HaejI6a9MdP+yFzLb+j4rRj4q+tXfHX1Eq0Vgetxf3rKm9UVV8srXi8v2RZ7irqiqCvS
KidrapTnm8QF462+65GEBlh4ND3j/uiYB+NjzuyNmPRNnTxJhox7QxxAWmJhX+U0siKrCuq2MUiU
Z2pXpyMZXKTWlHWNiFwC1xANrhC3RITn47oeriNQSjIMEx6Mjnm5uuLt9oa3mzmbbEeuNW1bo3HA
dQGPQrassi1VU7Per4n9kDiIeHJ0j4ezM+5PTwGHq+0Nr5eXPDt9xMenTxgm/X/dBp7vlvzs7Rf8
xRef8nB6ynfOP+KjowfMdysu1nP+4otP2Zf57R9YUAEvACUNWKFaAtdlECWM+2M+Pn3E98+f8f3z
Z/TC2ODLQpgkpT9i3B8hlTQoWFNTNBW1bNgVe5SSCBxiP7rldR1whYtUirwuCYPQQKGRqVd918P3
fMIgIvADAtdnmgxQxw9QSvLZxdd8dvmcBoVSEikbitJGH9cD1yNrW7JqDe38/Rv0nX/Po9k5Hx0/
4O3qmq/nb/j88jlpmZGEMU+O74P/mwvYvxEDr/Yb1vsNq2zD29UFoHkwPcN1HN4tL1nvlrxeXaOU
5MHsnLwuaaVheyrZUklJpVp84RnazvU4Hx9zNj7ibHzMJycPeTA942g0JfRDuz0bqq+sK1bpxoAV
TUPd1mRVjlQK3/Nw8PGE2Y/RoDDUYWvDeKskrk1wtFa3mbnrd5BpP+qhdAQWv74/3ZO3NVprBl7I
VZAQuj77uqS21+O7rr0W10CuQpjcQLhcLC/5y89/bOp7KXkwPSP0PObbBZ+++IzT0THT/phJ718e
rn8jBl7vN3x9/ZKvr19SNjUAD2fn3GxuuFhestjcUCuFcl0ezM4p25qyaaiamm2Rsisy6qIi9EIG
UcIw7vNwesbj2TmPZ+c8O35kDDycddi01ppGtpRNxb7MLHdcU8uG1hIWvkWzfGswpRRSSbO46pJa
1pRNAY5GaYlULZEf4ruG3/VcFyFc+nHPJ