Tôi đang sử dụng graphviz để trực quan hóa AST của ngôn ngữ tôi đang phân tích cú pháp. Tôi muốn bao gồm mã nguồn (dưới dạng nhãn) nhưng graphviz căn chỉnh văn bản bên trong nhãn, điều này gây rối với sự thụt đầu dòng của tôi (và mã có độ nhạy cảm thụt đầu dòng). Dưới đây là một ví dụ về vấn đề này, dòng thứ hai của mã không nên thụt:Graphviz - làm cách nào để làm cho văn bản trong nhãn được căn trái?
Đây là phần có liên quan của tập tin Dot tạo:
graph [fontname=Courier,fontsize=10.0,labeljust=l,nojustify=true];
node [shape=box,width=0.2,height=0.2,fontname=Courier,fontsize=10.0,penwidth=0.5];
edge [weight=1.2,penwidth=0.5,fontname=Courier,fontsize=10.0,labeljust=c];
labelloc="t";
label="\ndef square(a, b) -> a * b\ndef dotProduct(a, b) -> \n a.x * b.x + a.y * b.y\n";
Cảm ơn bạn, đây chính là điều tôi muốn. – migimunz
Tôi nhận được kết quả là nó chỉ hoạt động cho hai dòng (một lần xuất hiện '\ l'). Có ai nhận ra vấn đề này không? Đối với tôi dòng thứ ba không được căn chỉnh. – Tarrasch
Chủ đề cũ, tôi nhận ra, nhưng @Tarrasch: thêm '\ l' vào cuối dòng cuối cùng của bạn sẽ giải quyết nó, ví dụ: '" Dòng 1 \ lLine 3 \ lLine 3 \ l "' – JStroop