2012-04-30 23 views
6

có thư viện C# hay bất kỳ công cụ miễn phí nào có thể chuyển đổi tệp html với nhiều tài nguyên được tham chiếu thành một tệp html "tất cả trong một" không?Làm cách nào để đưa tất cả tài nguyên vào một tệp html?

Nhiệm vụ chính là để chỉ có một tập tin, nó có nghĩa là tôi cần phải bao gồm

  1. Javascript tập tin bên ngoài - điều này có lẽ sẽ có nghĩa là thay thế tất cả các thẻ 'kịch bản' với 'src' thuộc tính bằng cách 'kịch bản' thẻ có nội dung được đọc từ tệp được tham chiếu.
  2. Images - thay thế src = "picture.png" với uri dữ liệu - một cái gì đó giống như src = "data: image/png; base64, encodedContent ..."
  3. file CSS
  4. có thể tôi quên một cái gì đó :)

tập tin HTML này phải có thể đọc được trên mọi trình duyệt, đó là lý do tại sao tôi không thể sử dụng định dạng file MHT (đọc được trên Safari, iPad ...)

+0

Và tại sao không sử dụng tác vụ xây dựng "Nội dung" để sao chép các tệp khi xuất bản? Điểm của việc biến chúng thành tài nguyên là gì? – Candide

+0

@Ingenu Tôi không thể thấy rằng anh ấy đang đề cập đến bối cảnh xây dựng. Anh ta chỉ muốn lấy một tài liệu HTML từ một URL tùy ý và biến nó thành một tài liệu khép kín. –

+0

Chính xác. Tôi không phải là tác giả của HTML gốc. – cartas

Trả lời

2

Bạn có thể sử dụng HTML Agility Pack đi đọc/viết tài liệu html . HTML Agility hỗ trợ XPath để bạn có thể nhận danh sách các nút bạn muốn sửa đổi.

Sử dụng điều này, việc thay đổi giá trị thuộc tính của thẻ hình ảnh phải dễ dàng. Bạn cũng có thể nhận danh sách các tham chiếu js bên ngoài, đọc chúng và sau đó cập nhật thẻ script tương ứng.

+0

Tôi biết về "HTML Agility Pack" và đó có thể là cách tôi sẽ sử dụng nếu tôi không tìm thấy giải pháp nào khác. Vấn đề sẽ không được quên để bao gồm một cái gì đó và tôi sẽ phải viết tất cả từ đầu. Đó là lý do tại sao tôi đang tìm kiếm một "giải pháp" đã hoàn thành. – cartas

Các vấn đề liên quan