1

(警告: Stackoverflow で初めて) PDF をバイナリ経由で読み込めるようにしたいのですが、分離ストレージに書き戻すときに問題が発生します。分離ストレージに書き戻され、ファイルを開こうとすると、アドビ リーダーから、これは有効な PDF ではないというエラー メッセージが表示されます。ファイルは 102 キロバイトですが、分離ストレージに書き込むと 108 キロバイトになります。

これを行う理由は、pdfを分割できるようにしたいからです。PDFsharpを試しました(すべてのpdfタイプを開くわけではありません)。これが私のコードです:

public void pdf_split()
{
    string prefix = @"/PDFread;component/";

    string fn = originalFile;
    StreamResourceInfo sr = Application.GetResourceStream(new Uri(prefix + fn, UriKind.Relative));

    IsolatedStorageFile iStorage = IsolatedStorageFile.GetUserStoreForApplication();


    using (var outputStream = iStorage.OpenFile(sFile, FileMode.CreateNew))
    {
        Stream resourceStream = sr.Stream;
        long length = resourceStream.Length;
        byte[] buffer = new byte[32];
        int readCount = 0;

        while (readCount < length)
        {

            int read = sr.Stream.Read(buffer, 0, buffer.Length);
            readCount += read;
            outputStream.Write(buffer, 0, read);
        }
    }


}
4

0 に答える 0