我得到了一個「新工作」,以QR檔案「歸檔」一些數據。德爾福,QR,WMF
當修改並保存到數據庫中的數據結構,那麼我們開始了「靜音打印」與WMF過濾器,我趕上了文件,我所有這些,存儲在日誌記錄數據庫中的BLOB。
一切順利,但後來在需要的時候,以避免重複相同的報告。
我們禁用「時間戳QR領域」,但記錄重複。
我把一些CRC在數據庫中,和我從一個頁面的數據(WMF)計算它。
什麼是有趣的是,當我退出程序,新生成的WMF改變 - 所以CRC也發生了變化。
我認爲這是由QR造成的,那麼我查這一個簡單的Delphi程序:
procedure TForm1.BitBtn1Click(Sender: TObject);
var
WMF : TMetaFile;
mfc : TMetaFileCanvas;
begin
WMF := TMetaFile.Create;
mfc := TMetaFileCanvas.Create(WMF, 0);
try
WMF.Width := 1000;
WMF.Height := 1000;
mfc.Brush.Color := clRed;
mfc.FillRect(Rect(0, 0, 100, 100));
finally
mfc.Free;
WMF.SaveToFile('test1.wmf');
WMF.Free;
end;
end;
當我重新啓動應用程序,新的WMF文件與以前不同。
我以爲我解決了將wmf伸入bmp.Canvas的問題,但是這會減慢日誌記錄速度,因爲每個bmp都是4 MB,並且有10個頁面,我必須在4 * 10 MB上進行CRC校驗。 (WMF只有85-100 KByte每頁vs 4 MB位圖)
所以我正在尋找一些簡單的方法,我可以計算WMF的CRC,也許如果我可以完全分割WMF頭,然後我得到解決這個問題......我不知道在這一刻。
你有什麼想法嗎?請告訴我!
謝謝。
通過「QR」,你的意思是快速報告?或者是其他東西?但是由於您似乎已經確定「QR」與您的問題沒有關聯,您爲什麼將它包含在您的問題中呢?我不確定你在問什麼。請編輯您的問題,以刪除不相關的細節,並直接解決您所問的問題。 –
QR = QuickReport,對不起! – durumdara