Skip to content

Latest commit

 

History

History
52 lines (37 loc) · 1.35 KB

README.md

File metadata and controls

52 lines (37 loc) · 1.35 KB

WaveDrom TikZ

This simple (unofficial) tool is a translator from the language used by the excellent WaveDrom waveform drawing tool to TikZ allowing for professional looking waveforms in LaTeX documents. By producing TikZ, diagrams are typeset in native LaTeX and lines and shapes are drawn consistently with other TikZ figures in a document. Further, more sophisticated annotations are possible by referencing parts of the wavefrom from custom TikZ code.

This tool is currently in an incomplete and largely undocumented state. All drawing of waveforms should be supported correctly but arrows and annotations are not.

Example

A simple example waveform.

{
  signal: [
    { name : "clk",  wave : "p....|.." },
    { name : "data", wave : "x===.|.x", data: "a b c" },
    { name : "vld",  wave : "01...|.0" },
    { name : "rdy",  wave : "1..0.|1." },
  ]
}

Which can be built from within LaTeX source:

\begin{tikzpicture}[thick]
	\input{|"wavedromtikz.py wavedrom figures/rdyvld-protocol.drom"}
\end{tikzpicture}

Producing:

WaveDromTikZ example waveform

For comparison, the original WaveDrom image:

Regular WaveDrom example waveform

More Examples

Make the example pdf file from project root using

./make.sh