我正在研究下載ePub文件的PHP應用程序。作爲代碼的一部分,我添加了一個唯一標識符,可用於跟蹤數據庫中的原始下載信息以打擊盜版行爲。保存檔案評論至ePub文件
我正在使用PHP ZipArchive函數向該文件添加歸檔註釋,但似乎Adobe Digital Edition無法在存在評論時打開ePub文件。當評論被刪除,它打開罰款,所以我只想看看是否有其他人之前有這個問題,如果有一種方法可以添加評論到ePub文件,這將允許Adobe Digital Editions打開它。下面是我使用的代碼:
public function secureEpub($file, $download_id, $filepath){
//GENERATE RANDOM FILE NAME
$newFile = uniqid().".epub";
//COPY EPUB AND WORK FROM THAT VERSION
copy($file, $filepath.$newFile);
//TREAT EPUB FILE AS ORDINARY ZIP ARCHIVE
//OPEN AND EXTRACT EPUB
$zip = new ZipArchive;
$res = $zip->open($filepath.$newFile);
if($res === TRUE){
//ZIP ARCHIVE HAS OPENED SUCCESSFULLY - SET ARCHIVE COMMENT TO DOWNLOAD ID
$zip->setArchiveComment($download_id);
$zip->close();
} else {
error_log('Unable to open ePub (' . $filepath.$newFile . ') as Directory');
return false;
exit;
}
//ONCE CHANGE HAS BEEN MADE CLOSE THE ARCHIVE AND RETURN TEMP FILE
return $filepath.$newFile;
}
正如你可以看到它的副本原件,然後創建一個壓縮文件註釋返回文件(後刪除)。有沒有一種方法可以在不破壞ePub(ADE)的情況下實現這一目標?
讓我知道,如果我沒有作出任何意義:d
P.S:只是爲了澄清,下載正常工作和註釋正確應用。只是當其他ePub讀者管理良好時,ADE無法打開它。我是否以錯誤的方式處理它?
epub DRM是否受到保護?如果是,評論可能會混淆DRM系統依賴的一些校驗和,從而使布丁不在epub文件中。 – Boldewyn
Hi @Boldewyn,沒有ePub不受DRM保護 – JackWillDavis