2012-06-20 21 views
5

Tôi đang cố gắng tạo mặt nạ cắt trong VML tương ứng với clip-path trong SVG? Điều đó có thể không?vml clipping mask

Dựa trên rất nhiều, nhưng khá hạn chế, ví dụ tôi đã cố gắng vẽ hình dạng:

<vml:group style="WIDTH: 1px; HEIGHT: 1px" class=vml-element coordsize = "1,1"> 
    <vml:shape style="WIDTH: 1px; HEIGHT: 1px" id=vectorObject2 class=vml-element _fill-color="red" _fill-opacity="1" _stroke-color="black" _stroke-opacity="1" _stroke-width="1" coordsize = "1,1" filled = "t" fillcolor = "red" stroked = "t" strokecolor = "black" strokeweight = ".75pt" path = "m0,0 l100,0,0,100 xe"> 
     <vml:fill class=vml-element opacity = "1"></vml:fill> 
     <vml:stroke class=vml-element opacity = "1"></vml:stroke> 
    </vml:shape> 
</vml:group> 

và sau đó che nó bằng cách sử vmlframe:

<vml:vmlframe class=vml-element clip = "t" size = "15pt,37.5pt" src = "#vectorObject2"> </vml:vmlframe> 

Vẽ của hình công trình (hình tam giác) như mong đợi nhưng tôi không thể tìm được cách che giấu nó bằng cách sử dụng vmlframe. Đó có phải là cách đúng để đạt được mặt nạ không?

Vui lòng bỏ qua tất cả các thuộc tính tùy chỉnh kỳ lạ vì phần lớn mã VML được tạo thông qua thư viện của bên thứ ba.

Cảm ơn trước!

+0

Về mặt lý thuyết, bạn có thể cắt hình ảnh raster theo [tài liệu W3C này] (http://www.w3.org/Submission/1998/08/vmlreq): * "Ngắt và che mặt bằng cách cho phép hoạt động điền được chỉ định dưới dạng bitmap (có thể được cắt bớt thành đường dẫn điền). Có thể mở rộng VML để phù hợp với việc cắt các bản vẽ tùy ý bằng cách chỉ định bản vẽ đó là phần điền được cắt thành đường định hình. " * Xấu hổ dường như không có ví dụ nào cả. – user568458

Trả lời

2

Sử dụng CSS clip property để mô phỏng đường dẫn clip như được minh họa trong Dojo GFX library hoặc giống như jsgraphics.

+0

Đây thực sự là vấn đề. 'Dojo' đã thực hiện mặt nạ cắt hình chữ nhật, tuy nhiên, tôi cần một mặt nạ tùy chỉnh (ví dụ như đường dẫn/đường cong) –

+0

Thư viện [jsgraphics] (http://www.walterzorn.de/en/jsgraphics/jsgraphics_e.htm) cho phép trình duyệt chéo lấp đầy và nét của hình elip và đường tương ứng. Có thể kết hợp điều này với vị trí tuyệt đối và một màu phù hợp với màu nền để mô phỏng một mặt nạ cắt. –

+0

Ok, có vẻ như sẽ gần như tôi sẽ nhận được. Bounty đến với bạn @Paul! Cảm ơn :) –

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