Old style “caution” boxes Unicorn Meta Zoo #1: Why another podcast? Announcing the arrival of Valued Associate #679: Cesar ManaraNicer wavy line with TikZTabular border styleTikZ draw-Putting old calendar style date in left marginUsing a pgfplots-style legend in a plain-old tikzpictureLong Division with BoxesArranging connected boxesFormatting answer boxesHow to enumerate with borders (boxes)?Rounded boxes around textFlowchart of Nested BoxesOverlay multiple boxes in tikz
Where did Arya get these scars?
Suing a Police Officer Instead of the Police Department
Has a Nobel Peace laureate ever been accused of war crimes?
What *exactly* is electrical current, voltage, and resistance?
I preordered a game on my Xbox while on the home screen of my friend's account. Which of us owns the game?
Second order approximation of the loss function (Deep learning book, 7.33)
Could moose/elk survive in the Amazon forest?
What ability score does a Hexblade's Pact Weapon use for attack and damage when wielded by another character?
What is the ongoing value of the Kanban board to the developers as opposed to management
Raising a bilingual kid. When should we introduce the majority language?
What is the best way to deal with NPC-NPC combat?
What's the difference between using dependency injection with a container and using a service locator?
How would I use different systems of magic when they are capable of the same effects?
Multiple options vs single option UI
A Dictionary or Encyclopedia of Fantasy or Fairy Tales from the 1960s
PIC mathematical operations weird problem
What is the least dense liquid under normal conditions?
Contradiction proof for inequality of P and NP?
Can I criticise the more senior developers around me for not writing clean code?
Mistake in years of experience in resume?
Does Mathematica have an implementation of the Poisson binomial distribution?
How to not starve gigantic beasts
Reattaching fallen shelf to wall?
Can you stand up from being prone using Skirmisher outside of your turn?
Old style “caution” boxes
Unicorn Meta Zoo #1: Why another podcast?
Announcing the arrival of Valued Associate #679: Cesar ManaraNicer wavy line with TikZTabular border styleTikZ draw-Putting old calendar style date in left marginUsing a pgfplots-style legend in a plain-old tikzpictureLong Division with BoxesArranging connected boxesFormatting answer boxesHow to enumerate with borders (boxes)?Rounded boxes around textFlowchart of Nested BoxesOverlay multiple boxes in tikz
Technical manuals from the 1960s and 1970s sometimes had eye-catching CAUTION boxes surrounded by wavy or curly lines.
My best attempt at re-creating this is not ideal as I can't get the snake to line up on all corners:
begintikzpicture
draw[very thick,decorate,
decoration=snake,segment length=9.5pt]
(0,0) rectangle (140pt,40pt)
node[pos=0.5] textbfCAUTION;
endtikzpicture
I would also be willing to use any other package which can produce fancy boxes with borders.
tikz-pgf border
add a comment |
Technical manuals from the 1960s and 1970s sometimes had eye-catching CAUTION boxes surrounded by wavy or curly lines.
My best attempt at re-creating this is not ideal as I can't get the snake to line up on all corners:
begintikzpicture
draw[very thick,decorate,
decoration=snake,segment length=9.5pt]
(0,0) rectangle (140pt,40pt)
node[pos=0.5] textbfCAUTION;
endtikzpicture
I would also be willing to use any other package which can produce fancy boxes with borders.
tikz-pgf border
add a comment |
Technical manuals from the 1960s and 1970s sometimes had eye-catching CAUTION boxes surrounded by wavy or curly lines.
My best attempt at re-creating this is not ideal as I can't get the snake to line up on all corners:
begintikzpicture
draw[very thick,decorate,
decoration=snake,segment length=9.5pt]
(0,0) rectangle (140pt,40pt)
node[pos=0.5] textbfCAUTION;
endtikzpicture
I would also be willing to use any other package which can produce fancy boxes with borders.
tikz-pgf border
Technical manuals from the 1960s and 1970s sometimes had eye-catching CAUTION boxes surrounded by wavy or curly lines.
My best attempt at re-creating this is not ideal as I can't get the snake to line up on all corners:
begintikzpicture
draw[very thick,decorate,
decoration=snake,segment length=9.5pt]
(0,0) rectangle (140pt,40pt)
node[pos=0.5] textbfCAUTION;
endtikzpicture
I would also be willing to use any other package which can produce fancy boxes with borders.
tikz-pgf border
tikz-pgf border
edited Apr 18 at 6:00
Peter Mortensen
55437
55437
asked Apr 17 at 23:27
MassMass
34319
34319
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
I would employ Jake's complete sines here to modify your proposal to something that can also be used in a tcolorbox
documentclass[a4paper,12pt]article
usepackage[many]tcolorbox
usetikzlibrarydecorations
begindocument
pgfdeclaredecorationcomplete sinesinitial
stateinitial[
width=+0pt,
next state=sine,
persistent precomputation=pgfmathsetmacromatchinglength
pgfdecoratedinputsegmentlength / int(pgfdecoratedinputsegmentlength/pgfdecorationsegmentlength)
setlengthpgfdecorationsegmentlengthmatchinglength pt
]
statesine[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
statefinal
tikzsetoldfashioned sines/.style=very thick,line cap=rect,% <- thanks to quark67!
decorate,decoration=complete sines,segment length=#1,path has corners,
oldfashioned sines/.default=9.5pt
newtcolorboxCaution%
width=140pt,height=40pt,
colback=white,halign=flush center,valign=center,
enhanced,% jigsaw, breakable, % allow page breaks
frame hidden, % hide the default frame
overlay=%
draw[oldfashioned sines]
(frame.south west) rectangle (frame.north east);
draw[oldfashioned sines]
([xshift=1pt,yshift=0.4pt]frame.south west) rectangle ([xshift=1pt,yshift=0.4pt]frame.north east);
,
% paragraph skips obeyed within tcolorbox
parbox=false,
beginCaution
textbfCaution
endCaution
begintikzpicture
draw[oldfashioned sines]
(0,0) rectangle (140pt,40pt)
node[pos=0.5] textbfCAUTION;
endtikzpicture
begintikzpicture
draw[oldfashioned sines]
(0,0) rectangle (140pt,40pt)
node[pos=0.5] textbfCAUTION;
draw[oldfashioned sines]
(1pt,0.4pt) rectangle (141pt,40.4pt) ;
endtikzpicture
enddocument
I'd like to thank quark67 for the great suggestion to add line cap=rect
.
ADDENDUM: An attempt to address your request. It comes with a "new" decoration symmetric sines
that differ from Jake's complete sines in that the number of oscillations is half-integer. Therefore the result is symmetric under reflections about an axis that runs through the middle of the path.
documentclass[a4paper,12pt]article
usepackage[many]tcolorbox
usetikzlibrarydecorations
begindocument
pgfdeclaredecorationsymmetric sinesinitial
stateinitial[
width=+0pt,
next state=sine,
persistent precomputation=
pgfmathsetmacromatchinglength
pgfdecoratedinputsegmentlength /
(int(pgfdecoratedinputsegmentlength/pgfdecorationsegmentlength)+0.5)
setlengthpgfdecorationsegmentlengthmatchinglength pt
]
statesine[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
statefinal[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
tikzsetoldfashioned sines/.style=very thick,line cap=rect,% <- thanks to quark67!
decorate,decoration=symmetric sines,segment length=#1,path has corners,
oldfashioned sines/.default=9.5pt
defLstAnchors"south west","south east","north east","north west"
newtcolorboxCaution%
width=140pt,height=40pt,
colback=white,halign=flush center,valign=center,
enhanced,% jigsaw, breakable, % allow page breaks
frame hidden, % hide the default frame
overlay=%
foreach XX [count=YY,remember=XX as LastXX (initially north west)]
in south west,south east,north east,north west
ifoddYY
draw[oldfashioned sines] (frame.LastXX) -- (frame.XX);
draw[oldfashioned sines] ([xshift=1pt,yshift=0.4pt]frame.LastXX) -- ([xshift=1pt,yshift=0.4pt]frame.XX);
else
draw[oldfashioned sines] (frame.XX) -- (frame.LastXX);
draw[oldfashioned sines] ([xshift=1pt,yshift=0.4pt]frame.XX) -- ([xshift=1pt,yshift=0.4pt]frame.LastXX);
fi
,
% paragraph skips obeyed within tcolorbox
parbox=false,
beginCaution
textbfCAUTION
endCaution
enddocument
The question is what you want to achieve. Do you want to have such boxes in the text? If so, I will be happy to turn this into atcolorbox
.
– marmot
Apr 18 at 2:57
1
For a slightly better end of the decoration on the bottom left corner (when you magnified the picture), addline cap=rect
in the options ofdraw
.
– quark67
Apr 18 at 2:58
@quark67 That's an excellent suggestion, thanks!
– marmot
Apr 18 at 3:01
Looks very nice. Indeed I am interested in headers, not inline with text. Is it possible to have the ends line up symmetrically (like in the first picture of the question) instead of in a counter-clockwise fashion?
– Mass
2 days ago
@Mass I am not sure I understand your request but I added something which I thought may be what you want. If not, please try to explain it in more detail.
– marmot
2 days ago
|
show 2 more comments
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "85"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f485387%2fold-style-caution-boxes%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
I would employ Jake's complete sines here to modify your proposal to something that can also be used in a tcolorbox
documentclass[a4paper,12pt]article
usepackage[many]tcolorbox
usetikzlibrarydecorations
begindocument
pgfdeclaredecorationcomplete sinesinitial
stateinitial[
width=+0pt,
next state=sine,
persistent precomputation=pgfmathsetmacromatchinglength
pgfdecoratedinputsegmentlength / int(pgfdecoratedinputsegmentlength/pgfdecorationsegmentlength)
setlengthpgfdecorationsegmentlengthmatchinglength pt
]
statesine[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
statefinal
tikzsetoldfashioned sines/.style=very thick,line cap=rect,% <- thanks to quark67!
decorate,decoration=complete sines,segment length=#1,path has corners,
oldfashioned sines/.default=9.5pt
newtcolorboxCaution%
width=140pt,height=40pt,
colback=white,halign=flush center,valign=center,
enhanced,% jigsaw, breakable, % allow page breaks
frame hidden, % hide the default frame
overlay=%
draw[oldfashioned sines]
(frame.south west) rectangle (frame.north east);
draw[oldfashioned sines]
([xshift=1pt,yshift=0.4pt]frame.south west) rectangle ([xshift=1pt,yshift=0.4pt]frame.north east);
,
% paragraph skips obeyed within tcolorbox
parbox=false,
beginCaution
textbfCaution
endCaution
begintikzpicture
draw[oldfashioned sines]
(0,0) rectangle (140pt,40pt)
node[pos=0.5] textbfCAUTION;
endtikzpicture
begintikzpicture
draw[oldfashioned sines]
(0,0) rectangle (140pt,40pt)
node[pos=0.5] textbfCAUTION;
draw[oldfashioned sines]
(1pt,0.4pt) rectangle (141pt,40.4pt) ;
endtikzpicture
enddocument
I'd like to thank quark67 for the great suggestion to add line cap=rect
.
ADDENDUM: An attempt to address your request. It comes with a "new" decoration symmetric sines
that differ from Jake's complete sines in that the number of oscillations is half-integer. Therefore the result is symmetric under reflections about an axis that runs through the middle of the path.
documentclass[a4paper,12pt]article
usepackage[many]tcolorbox
usetikzlibrarydecorations
begindocument
pgfdeclaredecorationsymmetric sinesinitial
stateinitial[
width=+0pt,
next state=sine,
persistent precomputation=
pgfmathsetmacromatchinglength
pgfdecoratedinputsegmentlength /
(int(pgfdecoratedinputsegmentlength/pgfdecorationsegmentlength)+0.5)
setlengthpgfdecorationsegmentlengthmatchinglength pt
]
statesine[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
statefinal[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
tikzsetoldfashioned sines/.style=very thick,line cap=rect,% <- thanks to quark67!
decorate,decoration=symmetric sines,segment length=#1,path has corners,
oldfashioned sines/.default=9.5pt
defLstAnchors"south west","south east","north east","north west"
newtcolorboxCaution%
width=140pt,height=40pt,
colback=white,halign=flush center,valign=center,
enhanced,% jigsaw, breakable, % allow page breaks
frame hidden, % hide the default frame
overlay=%
foreach XX [count=YY,remember=XX as LastXX (initially north west)]
in south west,south east,north east,north west
ifoddYY
draw[oldfashioned sines] (frame.LastXX) -- (frame.XX);
draw[oldfashioned sines] ([xshift=1pt,yshift=0.4pt]frame.LastXX) -- ([xshift=1pt,yshift=0.4pt]frame.XX);
else
draw[oldfashioned sines] (frame.XX) -- (frame.LastXX);
draw[oldfashioned sines] ([xshift=1pt,yshift=0.4pt]frame.XX) -- ([xshift=1pt,yshift=0.4pt]frame.LastXX);
fi
,
% paragraph skips obeyed within tcolorbox
parbox=false,
beginCaution
textbfCAUTION
endCaution
enddocument
The question is what you want to achieve. Do you want to have such boxes in the text? If so, I will be happy to turn this into atcolorbox
.
– marmot
Apr 18 at 2:57
1
For a slightly better end of the decoration on the bottom left corner (when you magnified the picture), addline cap=rect
in the options ofdraw
.
– quark67
Apr 18 at 2:58
@quark67 That's an excellent suggestion, thanks!
– marmot
Apr 18 at 3:01
Looks very nice. Indeed I am interested in headers, not inline with text. Is it possible to have the ends line up symmetrically (like in the first picture of the question) instead of in a counter-clockwise fashion?
– Mass
2 days ago
@Mass I am not sure I understand your request but I added something which I thought may be what you want. If not, please try to explain it in more detail.
– marmot
2 days ago
|
show 2 more comments
I would employ Jake's complete sines here to modify your proposal to something that can also be used in a tcolorbox
documentclass[a4paper,12pt]article
usepackage[many]tcolorbox
usetikzlibrarydecorations
begindocument
pgfdeclaredecorationcomplete sinesinitial
stateinitial[
width=+0pt,
next state=sine,
persistent precomputation=pgfmathsetmacromatchinglength
pgfdecoratedinputsegmentlength / int(pgfdecoratedinputsegmentlength/pgfdecorationsegmentlength)
setlengthpgfdecorationsegmentlengthmatchinglength pt
]
statesine[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
statefinal
tikzsetoldfashioned sines/.style=very thick,line cap=rect,% <- thanks to quark67!
decorate,decoration=complete sines,segment length=#1,path has corners,
oldfashioned sines/.default=9.5pt
newtcolorboxCaution%
width=140pt,height=40pt,
colback=white,halign=flush center,valign=center,
enhanced,% jigsaw, breakable, % allow page breaks
frame hidden, % hide the default frame
overlay=%
draw[oldfashioned sines]
(frame.south west) rectangle (frame.north east);
draw[oldfashioned sines]
([xshift=1pt,yshift=0.4pt]frame.south west) rectangle ([xshift=1pt,yshift=0.4pt]frame.north east);
,
% paragraph skips obeyed within tcolorbox
parbox=false,
beginCaution
textbfCaution
endCaution
begintikzpicture
draw[oldfashioned sines]
(0,0) rectangle (140pt,40pt)
node[pos=0.5] textbfCAUTION;
endtikzpicture
begintikzpicture
draw[oldfashioned sines]
(0,0) rectangle (140pt,40pt)
node[pos=0.5] textbfCAUTION;
draw[oldfashioned sines]
(1pt,0.4pt) rectangle (141pt,40.4pt) ;
endtikzpicture
enddocument
I'd like to thank quark67 for the great suggestion to add line cap=rect
.
ADDENDUM: An attempt to address your request. It comes with a "new" decoration symmetric sines
that differ from Jake's complete sines in that the number of oscillations is half-integer. Therefore the result is symmetric under reflections about an axis that runs through the middle of the path.
documentclass[a4paper,12pt]article
usepackage[many]tcolorbox
usetikzlibrarydecorations
begindocument
pgfdeclaredecorationsymmetric sinesinitial
stateinitial[
width=+0pt,
next state=sine,
persistent precomputation=
pgfmathsetmacromatchinglength
pgfdecoratedinputsegmentlength /
(int(pgfdecoratedinputsegmentlength/pgfdecorationsegmentlength)+0.5)
setlengthpgfdecorationsegmentlengthmatchinglength pt
]
statesine[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
statefinal[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
tikzsetoldfashioned sines/.style=very thick,line cap=rect,% <- thanks to quark67!
decorate,decoration=symmetric sines,segment length=#1,path has corners,
oldfashioned sines/.default=9.5pt
defLstAnchors"south west","south east","north east","north west"
newtcolorboxCaution%
width=140pt,height=40pt,
colback=white,halign=flush center,valign=center,
enhanced,% jigsaw, breakable, % allow page breaks
frame hidden, % hide the default frame
overlay=%
foreach XX [count=YY,remember=XX as LastXX (initially north west)]
in south west,south east,north east,north west
ifoddYY
draw[oldfashioned sines] (frame.LastXX) -- (frame.XX);
draw[oldfashioned sines] ([xshift=1pt,yshift=0.4pt]frame.LastXX) -- ([xshift=1pt,yshift=0.4pt]frame.XX);
else
draw[oldfashioned sines] (frame.XX) -- (frame.LastXX);
draw[oldfashioned sines] ([xshift=1pt,yshift=0.4pt]frame.XX) -- ([xshift=1pt,yshift=0.4pt]frame.LastXX);
fi
,
% paragraph skips obeyed within tcolorbox
parbox=false,
beginCaution
textbfCAUTION
endCaution
enddocument
The question is what you want to achieve. Do you want to have such boxes in the text? If so, I will be happy to turn this into atcolorbox
.
– marmot
Apr 18 at 2:57
1
For a slightly better end of the decoration on the bottom left corner (when you magnified the picture), addline cap=rect
in the options ofdraw
.
– quark67
Apr 18 at 2:58
@quark67 That's an excellent suggestion, thanks!
– marmot
Apr 18 at 3:01
Looks very nice. Indeed I am interested in headers, not inline with text. Is it possible to have the ends line up symmetrically (like in the first picture of the question) instead of in a counter-clockwise fashion?
– Mass
2 days ago
@Mass I am not sure I understand your request but I added something which I thought may be what you want. If not, please try to explain it in more detail.
– marmot
2 days ago
|
show 2 more comments
I would employ Jake's complete sines here to modify your proposal to something that can also be used in a tcolorbox
documentclass[a4paper,12pt]article
usepackage[many]tcolorbox
usetikzlibrarydecorations
begindocument
pgfdeclaredecorationcomplete sinesinitial
stateinitial[
width=+0pt,
next state=sine,
persistent precomputation=pgfmathsetmacromatchinglength
pgfdecoratedinputsegmentlength / int(pgfdecoratedinputsegmentlength/pgfdecorationsegmentlength)
setlengthpgfdecorationsegmentlengthmatchinglength pt
]
statesine[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
statefinal
tikzsetoldfashioned sines/.style=very thick,line cap=rect,% <- thanks to quark67!
decorate,decoration=complete sines,segment length=#1,path has corners,
oldfashioned sines/.default=9.5pt
newtcolorboxCaution%
width=140pt,height=40pt,
colback=white,halign=flush center,valign=center,
enhanced,% jigsaw, breakable, % allow page breaks
frame hidden, % hide the default frame
overlay=%
draw[oldfashioned sines]
(frame.south west) rectangle (frame.north east);
draw[oldfashioned sines]
([xshift=1pt,yshift=0.4pt]frame.south west) rectangle ([xshift=1pt,yshift=0.4pt]frame.north east);
,
% paragraph skips obeyed within tcolorbox
parbox=false,
beginCaution
textbfCaution
endCaution
begintikzpicture
draw[oldfashioned sines]
(0,0) rectangle (140pt,40pt)
node[pos=0.5] textbfCAUTION;
endtikzpicture
begintikzpicture
draw[oldfashioned sines]
(0,0) rectangle (140pt,40pt)
node[pos=0.5] textbfCAUTION;
draw[oldfashioned sines]
(1pt,0.4pt) rectangle (141pt,40.4pt) ;
endtikzpicture
enddocument
I'd like to thank quark67 for the great suggestion to add line cap=rect
.
ADDENDUM: An attempt to address your request. It comes with a "new" decoration symmetric sines
that differ from Jake's complete sines in that the number of oscillations is half-integer. Therefore the result is symmetric under reflections about an axis that runs through the middle of the path.
documentclass[a4paper,12pt]article
usepackage[many]tcolorbox
usetikzlibrarydecorations
begindocument
pgfdeclaredecorationsymmetric sinesinitial
stateinitial[
width=+0pt,
next state=sine,
persistent precomputation=
pgfmathsetmacromatchinglength
pgfdecoratedinputsegmentlength /
(int(pgfdecoratedinputsegmentlength/pgfdecorationsegmentlength)+0.5)
setlengthpgfdecorationsegmentlengthmatchinglength pt
]
statesine[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
statefinal[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
tikzsetoldfashioned sines/.style=very thick,line cap=rect,% <- thanks to quark67!
decorate,decoration=symmetric sines,segment length=#1,path has corners,
oldfashioned sines/.default=9.5pt
defLstAnchors"south west","south east","north east","north west"
newtcolorboxCaution%
width=140pt,height=40pt,
colback=white,halign=flush center,valign=center,
enhanced,% jigsaw, breakable, % allow page breaks
frame hidden, % hide the default frame
overlay=%
foreach XX [count=YY,remember=XX as LastXX (initially north west)]
in south west,south east,north east,north west
ifoddYY
draw[oldfashioned sines] (frame.LastXX) -- (frame.XX);
draw[oldfashioned sines] ([xshift=1pt,yshift=0.4pt]frame.LastXX) -- ([xshift=1pt,yshift=0.4pt]frame.XX);
else
draw[oldfashioned sines] (frame.XX) -- (frame.LastXX);
draw[oldfashioned sines] ([xshift=1pt,yshift=0.4pt]frame.XX) -- ([xshift=1pt,yshift=0.4pt]frame.LastXX);
fi
,
% paragraph skips obeyed within tcolorbox
parbox=false,
beginCaution
textbfCAUTION
endCaution
enddocument
I would employ Jake's complete sines here to modify your proposal to something that can also be used in a tcolorbox
documentclass[a4paper,12pt]article
usepackage[many]tcolorbox
usetikzlibrarydecorations
begindocument
pgfdeclaredecorationcomplete sinesinitial
stateinitial[
width=+0pt,
next state=sine,
persistent precomputation=pgfmathsetmacromatchinglength
pgfdecoratedinputsegmentlength / int(pgfdecoratedinputsegmentlength/pgfdecorationsegmentlength)
setlengthpgfdecorationsegmentlengthmatchinglength pt
]
statesine[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
statefinal
tikzsetoldfashioned sines/.style=very thick,line cap=rect,% <- thanks to quark67!
decorate,decoration=complete sines,segment length=#1,path has corners,
oldfashioned sines/.default=9.5pt
newtcolorboxCaution%
width=140pt,height=40pt,
colback=white,halign=flush center,valign=center,
enhanced,% jigsaw, breakable, % allow page breaks
frame hidden, % hide the default frame
overlay=%
draw[oldfashioned sines]
(frame.south west) rectangle (frame.north east);
draw[oldfashioned sines]
([xshift=1pt,yshift=0.4pt]frame.south west) rectangle ([xshift=1pt,yshift=0.4pt]frame.north east);
,
% paragraph skips obeyed within tcolorbox
parbox=false,
beginCaution
textbfCaution
endCaution
begintikzpicture
draw[oldfashioned sines]
(0,0) rectangle (140pt,40pt)
node[pos=0.5] textbfCAUTION;
endtikzpicture
begintikzpicture
draw[oldfashioned sines]
(0,0) rectangle (140pt,40pt)
node[pos=0.5] textbfCAUTION;
draw[oldfashioned sines]
(1pt,0.4pt) rectangle (141pt,40.4pt) ;
endtikzpicture
enddocument
I'd like to thank quark67 for the great suggestion to add line cap=rect
.
ADDENDUM: An attempt to address your request. It comes with a "new" decoration symmetric sines
that differ from Jake's complete sines in that the number of oscillations is half-integer. Therefore the result is symmetric under reflections about an axis that runs through the middle of the path.
documentclass[a4paper,12pt]article
usepackage[many]tcolorbox
usetikzlibrarydecorations
begindocument
pgfdeclaredecorationsymmetric sinesinitial
stateinitial[
width=+0pt,
next state=sine,
persistent precomputation=
pgfmathsetmacromatchinglength
pgfdecoratedinputsegmentlength /
(int(pgfdecoratedinputsegmentlength/pgfdecorationsegmentlength)+0.5)
setlengthpgfdecorationsegmentlengthmatchinglength pt
]
statesine[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
statefinal[width=pgfdecorationsegmentlength]
pgfpathsinepgfpoint0.25pgfdecorationsegmentlength0.5pgfdecorationsegmentamplitude
pgfpathcosinepgfpoint0.25pgfdecorationsegmentlength-0.5pgfdecorationsegmentamplitude
tikzsetoldfashioned sines/.style=very thick,line cap=rect,% <- thanks to quark67!
decorate,decoration=symmetric sines,segment length=#1,path has corners,
oldfashioned sines/.default=9.5pt
defLstAnchors"south west","south east","north east","north west"
newtcolorboxCaution%
width=140pt,height=40pt,
colback=white,halign=flush center,valign=center,
enhanced,% jigsaw, breakable, % allow page breaks
frame hidden, % hide the default frame
overlay=%
foreach XX [count=YY,remember=XX as LastXX (initially north west)]
in south west,south east,north east,north west
ifoddYY
draw[oldfashioned sines] (frame.LastXX) -- (frame.XX);
draw[oldfashioned sines] ([xshift=1pt,yshift=0.4pt]frame.LastXX) -- ([xshift=1pt,yshift=0.4pt]frame.XX);
else
draw[oldfashioned sines] (frame.XX) -- (frame.LastXX);
draw[oldfashioned sines] ([xshift=1pt,yshift=0.4pt]frame.XX) -- ([xshift=1pt,yshift=0.4pt]frame.LastXX);
fi
,
% paragraph skips obeyed within tcolorbox
parbox=false,
beginCaution
textbfCAUTION
endCaution
enddocument
edited yesterday
answered Apr 17 at 23:47
marmotmarmot
121k6158296
121k6158296
The question is what you want to achieve. Do you want to have such boxes in the text? If so, I will be happy to turn this into atcolorbox
.
– marmot
Apr 18 at 2:57
1
For a slightly better end of the decoration on the bottom left corner (when you magnified the picture), addline cap=rect
in the options ofdraw
.
– quark67
Apr 18 at 2:58
@quark67 That's an excellent suggestion, thanks!
– marmot
Apr 18 at 3:01
Looks very nice. Indeed I am interested in headers, not inline with text. Is it possible to have the ends line up symmetrically (like in the first picture of the question) instead of in a counter-clockwise fashion?
– Mass
2 days ago
@Mass I am not sure I understand your request but I added something which I thought may be what you want. If not, please try to explain it in more detail.
– marmot
2 days ago
|
show 2 more comments
The question is what you want to achieve. Do you want to have such boxes in the text? If so, I will be happy to turn this into atcolorbox
.
– marmot
Apr 18 at 2:57
1
For a slightly better end of the decoration on the bottom left corner (when you magnified the picture), addline cap=rect
in the options ofdraw
.
– quark67
Apr 18 at 2:58
@quark67 That's an excellent suggestion, thanks!
– marmot
Apr 18 at 3:01
Looks very nice. Indeed I am interested in headers, not inline with text. Is it possible to have the ends line up symmetrically (like in the first picture of the question) instead of in a counter-clockwise fashion?
– Mass
2 days ago
@Mass I am not sure I understand your request but I added something which I thought may be what you want. If not, please try to explain it in more detail.
– marmot
2 days ago
The question is what you want to achieve. Do you want to have such boxes in the text? If so, I will be happy to turn this into a
tcolorbox
.– marmot
Apr 18 at 2:57
The question is what you want to achieve. Do you want to have such boxes in the text? If so, I will be happy to turn this into a
tcolorbox
.– marmot
Apr 18 at 2:57
1
1
For a slightly better end of the decoration on the bottom left corner (when you magnified the picture), add
line cap=rect
in the options of draw
.– quark67
Apr 18 at 2:58
For a slightly better end of the decoration on the bottom left corner (when you magnified the picture), add
line cap=rect
in the options of draw
.– quark67
Apr 18 at 2:58
@quark67 That's an excellent suggestion, thanks!
– marmot
Apr 18 at 3:01
@quark67 That's an excellent suggestion, thanks!
– marmot
Apr 18 at 3:01
Looks very nice. Indeed I am interested in headers, not inline with text. Is it possible to have the ends line up symmetrically (like in the first picture of the question) instead of in a counter-clockwise fashion?
– Mass
2 days ago
Looks very nice. Indeed I am interested in headers, not inline with text. Is it possible to have the ends line up symmetrically (like in the first picture of the question) instead of in a counter-clockwise fashion?
– Mass
2 days ago
@Mass I am not sure I understand your request but I added something which I thought may be what you want. If not, please try to explain it in more detail.
– marmot
2 days ago
@Mass I am not sure I understand your request but I added something which I thought may be what you want. If not, please try to explain it in more detail.
– marmot
2 days ago
|
show 2 more comments
Thanks for contributing an answer to TeX - LaTeX Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f485387%2fold-style-caution-boxes%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown