次のような Hexa 文字列バイトストリームの形式で利用できる pdf ファイルがあります。
"255044462D312E330D0A25E2E3CFD30D0A322030206F626A......"
(非常に長い文字列なので、形式を指定しました)これは、ブラウザで使用できる文字列形式です。
これを 16 進形式に変換して、この出力ストリームを pdf ファイルに書き込んで Web ブラウザーで pdf をレンダリングできるようにする必要があります。組み込み関数があるかどうか、または Javascript でこれを実現できる方法があるかどうかを知る必要があります。
この機能の実装は Java で簡単であることはわかっていますが、ABAP
この文字列のみをフェッチするバックエンドとSAPUI5
、Javascript ベースのフレームワークであるフロント エンドがあります。
データが正しいかどうかをテストするためだけに PDF を生成する単純な Java プログラムを作成して、このバイトストリームの有効性を確認しました。
public static void main(String[] args) {
FileOutputStream fop = null;
File file;
file = new File("C:/Users/I074098/Desktop/Project Temps/test.pdf");
fop = new FileOutputStream(file);
// if file doesnt exists, then create it
if (!file.exists()) {
file.createNewFile();
}
//I manually added "(byte) 0x" in the above string and
//converted it to the following format, I skipped that conversion in this code
byte[] contentInBytes = new byte[]{
(byte) 0x25,(byte) 0x50,(byte) 0x44,(byte) 0x46, .....
}
fop.write(contentInBytes);
fop.flush();
fop.close();
}
これにより、pdfが生成されます。しかし、私はそれが非常に非効率的であることを知っており、これがすべて JavaScript で実行できるかどうかはわかりません。私は多くの検索を行いましたが、実りはありませんでした。どんな助けにも感謝します。
よろしく、 リスワン