Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Magick.NET is unable to read/write extended XMP data

Đang mở
#324 5 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
35/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
csharp
Lĩnh vực
computer-graphics

Hướng nghiên cứu

Bắt đầu bằng cách tái hiện sự cố với một hình ảnh có dữ liệu XMP được chia thành nhiều phân đoạn APP1 mở rộng, sau đó so sánh hành vi với mục 1.1.3.1 của đặc tả lưu trữ XMP được liên kết. Theo dõi cách xử lý cấu hình XMP của ImageMagick/Magick.NET và coi vấn đề là đã hoàn tất khi XMP mở rộng có thể được đọc và ghi chính xác.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

enhancement help wanted

I've hit a problem with XMP data where the data is stored as extended XMP segments. It looks like Image Magick/Magick.NET don't read or write extended XMP data correctly and this is preventing me from reading information from the XMP profile.

I've had a read of the XMP specification (link at the bottom of this). When XMP data in an image extends beyond 64Kb, the profile is supposed to be split in to one standard segment and one (or more) extended segments, each under 64Kb in size. Each segment is variable length, and the application that writes the data is responsible for the way in which the XMP data is split across different segments.

The specification says that extended segments should be written as follow:
"Each chunk is written into the JPEG file within a separate APP1 marker segment. Each ExtendedXMP marker segment contains:

  • A null-terminated signature string of "http://ns.adobe.com/xmp/extension/".
  • A 128-bit GUID stored as a 32-byte ASCII hex string, capital A-F, no null termination. The GUID is a 128-bit
  • MD5 digest of the full ExtendedXMP serialization.
  • The full length of the ExtendedXMP serialization as a 32-bit unsigned integer
  • The offset of this portion as a 32-bit unsigned integer.
  • The portion of the ExtendedXMP"

See XMP storage specification, section 1.1.3.1 (https://wwwimages2.adobe.com/content/dam/acom/en/devnet/xmp/pdfs/XMP%20SDK%20Release%20cc-2016-08/XMPSpecificationPart3.pdf)

Ngôn ngữ chính
C#
Star
4k
Fork
454
Merge trung bình
12 giờ 54 phút
Pull request đã merge (30 ngày)
3

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của dlemstra/Magick.NET

Tất cả issue của dlemstra/Magick.NET

Issue tương tự

Thêm issue về C#

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.