Totally sweet horizontal rules in LaTeX
I have been trying to find a way to easily drop a nice horizontal rule into a LaTeX document. hline
just makes a line across the page. It would seem that some package must provide something that is maybe half a page wide, with little bedknobs on the ends or something to act as a nice section marker for paragraphs.
Any ideas? Or am I boned, and need to come up with my own macro to create such a beast?
rules decorations
migrated from stackoverflow.com Oct 25 '11 at 20:33
This question came from our site for professional and enthusiast programmers.
|
show 4 more comments
I have been trying to find a way to easily drop a nice horizontal rule into a LaTeX document. hline
just makes a line across the page. It would seem that some package must provide something that is maybe half a page wide, with little bedknobs on the ends or something to act as a nice section marker for paragraphs.
Any ideas? Or am I boned, and need to come up with my own macro to create such a beast?
rules decorations
migrated from stackoverflow.com Oct 25 '11 at 20:33
This question came from our site for professional and enthusiast programmers.
9
call me old-fashioned, but is "totally sweet" the adjective you're really looking for here?
– nickf
Feb 6 '09 at 16:23
28
Old-fashioned, nick. :-P
– JMD
Feb 6 '09 at 16:26
7
It is the adjective I'm looking for. Something like ----, where the asterisks are cool leaves or something, like a big fancy curtainrod. If someone saw it, they would exclaim, "TOTALLY SWEET!"
– Arcane
Feb 6 '09 at 16:42
60
usepackage{totallysweetrules}
– quant_dev
Dec 7 '09 at 10:15
4
This question might be relevant too.
– ienissei
Mar 30 '12 at 9:09
|
show 4 more comments
I have been trying to find a way to easily drop a nice horizontal rule into a LaTeX document. hline
just makes a line across the page. It would seem that some package must provide something that is maybe half a page wide, with little bedknobs on the ends or something to act as a nice section marker for paragraphs.
Any ideas? Or am I boned, and need to come up with my own macro to create such a beast?
rules decorations
I have been trying to find a way to easily drop a nice horizontal rule into a LaTeX document. hline
just makes a line across the page. It would seem that some package must provide something that is maybe half a page wide, with little bedknobs on the ends or something to act as a nice section marker for paragraphs.
Any ideas? Or am I boned, and need to come up with my own macro to create such a beast?
rules decorations
rules decorations
edited Oct 25 '11 at 20:37
Werner
443k679781675
443k679781675
asked Feb 6 '09 at 16:21
ArcaneArcane
821274
821274
migrated from stackoverflow.com Oct 25 '11 at 20:33
This question came from our site for professional and enthusiast programmers.
migrated from stackoverflow.com Oct 25 '11 at 20:33
This question came from our site for professional and enthusiast programmers.
9
call me old-fashioned, but is "totally sweet" the adjective you're really looking for here?
– nickf
Feb 6 '09 at 16:23
28
Old-fashioned, nick. :-P
– JMD
Feb 6 '09 at 16:26
7
It is the adjective I'm looking for. Something like ----, where the asterisks are cool leaves or something, like a big fancy curtainrod. If someone saw it, they would exclaim, "TOTALLY SWEET!"
– Arcane
Feb 6 '09 at 16:42
60
usepackage{totallysweetrules}
– quant_dev
Dec 7 '09 at 10:15
4
This question might be relevant too.
– ienissei
Mar 30 '12 at 9:09
|
show 4 more comments
9
call me old-fashioned, but is "totally sweet" the adjective you're really looking for here?
– nickf
Feb 6 '09 at 16:23
28
Old-fashioned, nick. :-P
– JMD
Feb 6 '09 at 16:26
7
It is the adjective I'm looking for. Something like ----, where the asterisks are cool leaves or something, like a big fancy curtainrod. If someone saw it, they would exclaim, "TOTALLY SWEET!"
– Arcane
Feb 6 '09 at 16:42
60
usepackage{totallysweetrules}
– quant_dev
Dec 7 '09 at 10:15
4
This question might be relevant too.
– ienissei
Mar 30 '12 at 9:09
9
9
call me old-fashioned, but is "totally sweet" the adjective you're really looking for here?
– nickf
Feb 6 '09 at 16:23
call me old-fashioned, but is "totally sweet" the adjective you're really looking for here?
– nickf
Feb 6 '09 at 16:23
28
28
Old-fashioned, nick. :-P
– JMD
Feb 6 '09 at 16:26
Old-fashioned, nick. :-P
– JMD
Feb 6 '09 at 16:26
7
7
It is the adjective I'm looking for. Something like ----, where the asterisks are cool leaves or something, like a big fancy curtainrod. If someone saw it, they would exclaim, "TOTALLY SWEET!"
– Arcane
Feb 6 '09 at 16:42
It is the adjective I'm looking for. Something like ----, where the asterisks are cool leaves or something, like a big fancy curtainrod. If someone saw it, they would exclaim, "TOTALLY SWEET!"
– Arcane
Feb 6 '09 at 16:42
60
60
usepackage{totallysweetrules}
– quant_dev
Dec 7 '09 at 10:15
usepackage{totallysweetrules}
– quant_dev
Dec 7 '09 at 10:15
4
4
This question might be relevant too.
– ienissei
Mar 30 '12 at 9:09
This question might be relevant too.
– ienissei
Mar 30 '12 at 9:09
|
show 4 more comments
14 Answers
14
active
oldest
votes
You may be interested in pgfornament.
PassOptionsToPackage{svgnames}{xcolor}
documentclass[11pt]{article}
usepackage[object=vectorian]{pgfornament} %% http://altermundus.com/pages/tkz/ornament/index.html
usepackage{lipsum,tikz}
newcommand{sectionline}{%
noindent
begin{center}
{color{DarkViolet}
resizebox{0.5linewidth}{1ex}
{{%
{begin{tikzpicture}
node (C) at (0,0) {};
node (D) at (9,0) {};
path (C) to [ornament=85] (D);
end{tikzpicture}}}}}%
end{center}
}
%% A macro with two arguments to change ornaments and colors easily
%% Syntax -- sectionlinetwo{<color>}{<ornament>}
newcommand{sectionlinetwo}[2]{%
nointerlineskip vspace{.5baselineskip}hspace{fill}
{color{#1}
resizebox{0.5linewidth}{2ex}
{{%
{begin{tikzpicture}
node (C) at (0,0) {};
node (D) at (9,0) {};
path (C) to [ornament=#2] (D);
end{tikzpicture}}}}}%
hspace{fill}
parnointerlineskip vspace{.5baselineskip}
}
begin{document}
lipsum[1]
sectionline
lipsum[2]
sectionlinetwo{magenta}{84}
lipsum[3]
sectionlinetwo{DarkGreen}{88}
end{document}
As pointed by Gonzalo, pgfornaments
can be used without tikzpicture
environment as
newcommand{sectionlinetwo}[2]{%
nointerlineskip vspace{.5baselineskip}hspace{fill}
{resizebox{0.5linewidth}{1.2ex}
{pgfornament[color = #1]{#2}
}}%
hspace{fill}
parnointerlineskip vspace{.5baselineskip}
}
hence making code less cluttered.
add a comment |
In general:
rule{width}{height}
macro:
newcommand{sectionline}{%
nointerlineskip vspace{baselineskip}%
hspace{fill}rule{0.5linewidth}{.7pt}hspace{fill}%
parnointerlineskip vspace{baselineskip}
}
3
Removing the %s from the macro made it center the line properly.
– Matt
Sep 3 '11 at 16:56
1
For other users: don't forget that "width" and "height" are in terms of "pt", so the proper usage ofrule
is something along the lines ofrule{500pt}{1pt}
.
– rsegal
Aug 31 '12 at 15:32
I was trying to use this to get a double rule... but this doesn't work. Could you help me to understand why. newcommand{sectionline}{ nointerlineskip vspace{baselineskip} hspace{fill}rule{0.95linewidth}{.7pt} rule{0.95linewidth}{1.7pt}hspace{fill} parnointerlineskip vspace{baselineskip} }
– theobear
Jun 7 '13 at 16:45
add a comment |
The web-O-mints
package offers here another option; a little example:
documentclass[12pt]{article}
usepackage[vmargin=2.5cm]{geometry}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{graphicx}
usepackage{fourier}
usepackage[nopar]{lipsum}
newcommanddeco[2]{%
parvspace{1ex}
begin{center}
fontsize{#1}{#1}usefont{U}{webo}{xl}{n}#2
end{center}
vspace*{1ex}par
}
newcounter{mytimes}
newcommandOPpattern{%
loop
ifnumvalue{mytimes}<7relax
stepcounter{mytimes}%
rotatebox{90}{o}raisebox{8pt}{rotatebox{270}{n}}%
repeat}
begin{document}
lipsum[2]
deco{10pt}{IJKLIJKL}
lipsum[2]
deco{16pt}{}
lipsum[2]
deco{10pt}{pqpqpqpqpqpqpqpqpqpq}
lipsum[2]
deco{10pt}{444444444}
lipsum[2]
deco{10pt}{fgfgfgfgfgfgfg}
lipsum[2]
deco{14pt}{OPpattern}
lipsum[2]
deco{12pt}{mmmmmmmmmmmmmm}
lipsum[2]
end{document}
1
Forgive me if I am overlooking something, but I don't see you calling any package named web-0-mint!
– Ludi
Jul 20 '17 at 16:34
add a comment |
Well, we can always appeal to tikz to make these graphic details.
Below you can see some lines with the tikz own endings.
And the picture above was generated from the following code:
documentclass[a4paper, twocolumn]{article}
usepackage{tikz}
usetikzlibrary{arrows}
newcommand{myrule} [3] {
begin{center}
begin{tikzpicture}
draw[#2-#3, ultra thick, #1] (0,0) to (0.5linewidth,0);
end{tikzpicture}
end{center}
}
begin{document}
myrule{}{}
myrule[double]{}{}
myrule{to}{to}
myrule[double]{to}{to}
myrule{to reversed}{to reversed}
myrule[double]{to reversed}{to reversed}
myrule{implies}{implies}
myrule[double]{implies}{implies}
myrule{latex}{latex}
myrule{latex reversed}{latex reversed}
myrule{latex'}{latex'}
myrule{latex' reversed}{latex' reversed}
myrule{stealth}{stealth}
myrule{stealth reversed}{stealth reversed}
myrule{stealth'}{stealth'}
myrule{stealth' reversed}{stealth' reversed}
myrule{triangle 90}{triangle 90}
myrule{triangle 90 reversed}{triangle 90 reversed}
myrule{triangle 60}{triangle 60}
myrule{triangle 60 reversed}{triangle 60 reversed}
myrule{triangle 45}{triangle 45}
myrule{triangle 45 reversed}{triangle 45 reversed}
myrule{open triangle 90}{open triangle 90}
myrule{open triangle 90 reversed}{open triangle 90 reversed}
myrule{open triangle 60}{open triangle 60}
myrule{open triangle 60 reversed}{open triangle 60 reversed}
myrule{open triangle 45}{open triangle 45}
myrule{open triangle 45 reversed}{open triangle 45 reversed}
myrule{angle 90}{angle 90}
myrule{angle 90 reversed}{angle 90 reversed}
myrule{angle 60}{angle 60}
myrule{angle 60 reversed}{angle 60 reversed}
myrule{angle 45}{angle 45}
myrule{angle 45 reversed}{angle 45 reversed}
myrule{hooks}{hooks}
myrule{hooks reversed}{hooks reversed}
myrule{(}{)}
myrule{)}{(}
myrule{|}{|}
myrule{o}{o}
myrule{*}{*}
myrule{diamond}{diamond}
myrule{open diamond}{open diamond}
myrule{square}{square}
myrule{open square}{open square}
myrule{serif cm}{serif cm}
myrule{left to}{left to}
myrule{left to reversed}{left to reversed}
myrule{right to}{right to}
myrule{right to reversed}{right to reversed}
myrule{left hook}{left hook}
myrule{left hook reversed}{left hook reversed}
myrule{right hook}{right hook}
myrule{right hook reversed}{right hook reversed}
myrule[line width = 2mm]{round cap}{round cap}
myrule[line width = 2mm]{butt cap}{butt cap}
myrule[line width = 2mm]{triangle 90 cap}{triangle 90 cap}
myrule[line width = 2mm]{triangle 90 cap reversed}{triangle 90 cap reversed}
myrule[line width = 2mm]{fast cap}{fast cap}
myrule[line width = 2mm]{fast cap reversed}{fast cap reversed}
end{document}
But you can also use more powerful features:
And to generate the image above:
documentclass[a4paper, twocolumn]{article}
usepackage{tikz}
usetikzlibrary{decorations.markings}
usetikzlibrary{decorations.shapes}
usetikzlibrary{shapes.geometric}
usetikzlibrary{decorations.fractals}
usetikzlibrary{decorations.footprints}
tikzset {
, bedknobs one/.style = {
decorate
, fill = red!50
, decoration = {
shape backgrounds
, shape = #1
, shape size = 2mm
}
}
, bedknobs two/.style = {
decorate
, decoration = {
#1
}
, fill = blue!50
}
}
newcommand{bedknobsone}[1]{
begin{center}
tikz draw [bedknobs one = {#1}] (0,0) to (0.5linewidth, 0);
end{center}
}
newcommand{bedknobstwo}[1]{
begin{center}
tikz draw [bedknobs two = {#1}] (0,0) to (0.5linewidth, 0);
end{center}
}
newcommand{bedknobsthree}[1]{
begin{center}
tikz [
decoration = #1
] draw decorate{ decorate{ decorate{ (0, 0) -- (0.5linewidth, 0) }}};
end{center}
}
newcommand{bedknobsfour}{
begin{center}
begin{tikzpicture} [thick]
node[minimum size = 5mm] (first) {};
node[minimum size = 5mm, anchor = west] (second) at (first.east) {};
draw plot [smooth] coordinates {
(first.north) (first.west) (first.south)
(second.north) (second.east) (second.south)
};
end{tikzpicture}
end{center}
}
newcommand{bedknobsfive}{
begin{center}
begin{tikzpicture} [thick]
node[minimum size = 5mm] (first) {};
node[minimum size = 5mm, anchor = west] (second) at (first.east) {};
node[minimum size = 5mm, anchor = west] (space) at (second.east) {};
node[minimum size = 5mm, anchor = west] (third) at (space.east) {};
node[minimum size = 5mm, anchor = west] (fourth) at (third.east) {};
draw plot [smooth] coordinates {
(first.north) (first.west) (first.south)
(second.north) (second.east) (second.south)
};
draw plot [smooth] coordinates {
(fourth.north) (fourth.east) (fourth.south)
(third.north) (third.west) (third.south)
};
end{tikzpicture}
end{center}
}
begin{document}
section {basic}
bedknobstwo{crosses}
bedknobstwo{triangles}
section {shapes}
bedknobsone{dart}
bedknobsone{diamond}
bedknobsone{isosceles triangle}
bedknobsone{star}
bedknobstwo{shape backgrounds, shape scaled, shape start size=2.5mm,shape end size=1mm}
section {footprints}
bedknobstwo{footprints}
bedknobstwo{footprints, foot of = gnome}
bedknobstwo{footprints, foot of = bird}
bedknobstwo{footprints, foot of = felis silvestri}
section {fractals}
bedknobsthree {Koch curve type 1}
bedknobsthree {Koch curve type 2}
bedknobsthree {Koch snowflake}
bedknobsthree {Cantor set}
section {Others}
bedknobsfour
bedknobsfive
end{document}
3
Just a note that it might be a good idea to externalize such things if you use them a lot, because TikZ is slowing the compilation a lot.
– yo'
Oct 13 '12 at 20:55
add a comment |
memoir
document class has facilities to draw these "totally sweet" anonymous breaks. See section 6.7 Fancy anonymous breaks (page 109-111) of the manual for details.
Hi @Seamus, I looked at the Memoir class and it does seem to have beautiful separators. How would I go about importing some of these if I were to use another document class?
– tchakravarty
Nov 5 '11 at 23:47
2
@FgNu That sounds like a new question...
– Seamus
Nov 6 '11 at 21:26
1
I changed the manual reference to include the section name, as the page count had changed a little in newer version (the one I have is dated 2011/03/06). I assume that was the section you were referring to.
– Torbjørn T.
Oct 13 '12 at 7:25
add a comment |
I used this image and then this code:
In header:
newcommand{parasep}{
begin{center}
includegraphics[scale=.5]{hrule.png}
end{center}}
In body where you want the image:
parasep
Oh and remember to:
usepackage{graphicx}
Cf. my comment on dreamlax's post, below.
– Charles Stewart
Dec 7 '09 at 9:49
i get this error: ! Missing endcsname inserted. <to be read again> unhbox ? I have no idea why?
– Andreas
Dec 17 '09 at 10:13
In which implementation you can provide the filename with the extension on?
– souser12345
Sep 2 '10 at 17:32
add a comment |
The xhfill
package provides an array of leaders and colours to create straight-forward, sweet rules. The following is taken mostly from the xhfill
documentation:
documentclass{article}
usepackage{listings}% http://ctan.org/pkg/listings
lstset{language=[LaTeX]TeX,
basicstyle=smallttfamily}
%usepackage{xcolor}% http://ctan.org/pkg/xcolor | Loaded by listings
usepackage{xhfill}% http://ctan.org/pkg/xhfill
setlength{parindent}{0pt}% Just for this example
newcommand{xfill}[2][1ex]{{%
dimen0=#2advancedimen0 by #1
leadershrule height dimen0 depth -#1hfill%
}}
newcommand{xfilll}[2][1ex]{%
dimen0=#2advancedimen0 by #1%
leadershrule height dimen0 depth -#1hfill%
}
begin{document}
blahxfilll{1pt}blub
begin{lstlisting}
blahxfilll{1pt}blub
end{lstlisting}
bigskip
blahxfilll[0pt]{4pt}blub
begin{lstlisting}
blahxfilll[0pt]{4pt}blub
end{lstlisting}
bigskip
blahxfilll[-12pt]{12pt}blub
begin{lstlisting}
blahxfilll[-12pt]{12pt}blub
end{lstlisting}
bigskip
blahxrfill{1pt}[blue]blub blahxrfill{2pt}[cyan]blub
begin{lstlisting}
blahxrfill{1pt}[blue]blub blahxrfill{2pt}[cyan]blub
end{lstlisting}
bigskip
laberxrfill[0pt]{4pt}[green]blub blub
begin{lstlisting}
laberxrfill[0pt]{4pt}[green]blub blub
end{lstlisting}
bigskip
blahxrfill[-1ex]{1pt}[red]blub
begin{lstlisting}
blahxrfill[-1ex]{1pt}[red]blub
end{lstlisting}
bigskip
blah xhrulefill{cyan}{1cm} blub
begin{lstlisting}
blah xhrulefill{cyan}{1cm} blub
end{lstlisting}
bigskip
blah xhrectanglefill{0.5cm}{1pt} blubber
begin{lstlisting}
blah xhrectanglefill{0.5cm}{1pt} blubber
end{lstlisting}
bigskip
blahxdotfill{1pt}[blue]blahxdotfill{2pt}[red]blub
begin{lstlisting}
blahxdotfill{1pt}[blue]blahxdotfill{2pt}[red]blub
end{lstlisting}
end{document}
This works for me, but not with the command shown (xfilll
) nor with the one in the package's documentation (xfill
). What worked was what's given as a comment under Usage inxhfill.sty
:xhrulefill{blue}{5pt}
.
– Liam
Dec 26 '15 at 20:55
add a comment |
You might want to install the webomint
fonsts from CTAN. There are a lot of ornaments in this font. Then one possibility would be:
documentclass[11pt]{article}
usepackage{graphicx}
usepackage{lipsum}
makeatletter
newcommand{EnglischeLinie}{%
@afterindentfalse
{begin{center}
resizebox{0.8linewidth}{0.4ex}{{%
fontsize{20}{24}usefont{U}{webo}{xl}{n}{4}}}%
end{center}}@afterheading}
makeatother
begin{document}
lipsum[1]
EnglischeLinie
lipsum[1]
end{document}
This will look like this:
You may play around with this.
add a comment |
In TeX, there is a primitive command leaders
which is able to take an hbox
and replicate it as many times as necessary to fill a specific amount of glue (which can be the entire with of the page if necessary). Each box that it lays down will stick to a vertical grid, so that boxes laid directly below will be in-line with the ones above (so they don't appear out of sync). This technique is commonly used for tables of contents.
You can supply your own custom graphic and box to have a repeating pattern used as a line.
usepackage{graphicx}
newcommand{nicehline}{%
parnoindent
leadershbox to 1in{includegraphics{somethingnice.png}}hfill
par
}
Lorem ipsum dolor sit amet.
nicehline
Lorem ipsum dolor sit amet.
Of course, you'll need to supply your own somethingnice.png
, or alternatively use a dingbat. Perhaps it may be better to save the graphic into its own box register if it will mean the graphics are only included once and referenced thereafter (as opposed to included each time it is to be displayed).
This is basically the right way to do it, but using metafont/metapost pictures as fonts may give better results than embedding png/eps/&c graphics, since they will scale well.
– Charles Stewart
Dec 7 '09 at 9:45
add a comment |
Everything I've ever read defines a custom command for fancy graphical paragraph separators. Nothing in latex adds bedknobs or any fancy decorations, and I can't find any packages which add such functionality.
The example I've seen is typically:
newcommand{parasep}{begin{center}*hspace{6em}*hspace{6em}*end{center}}
Obviously from here you could replace the asterisks with something more visually appealing.
@jasedit I tried to resolve the bedknobs issue, but realized my hands were handcuffed to them.
– Nicholas Hamilton
May 22 '13 at 20:23
add a comment |
Just to reiterate: you can get better results with fonts than embedded images, and better results with TeX-native font representations (e.g., MetaFont), than with TrueType fonts.
Noah, above, linked to typoasis, which has some mouthwateringly beautiful fonts, but they are alien to TeX, so you might not get ideal results with them.
Zapfino, Hermann Zapf's calligraphic font, is worth a look: Zapf worked with Knuth on this, and some other, fonts, so it is all done The Right Way.
If you do make use of TeX-alien fonts, it is best to import tham as MetaType1 fonts using, say, the pf2mt1 utility; cf. the CTAN metatype1 package's README for some info.
1) Couldn't you use a vector-image for nice results? I know that LaTeX doesn't support actual image formats like SVG, but you can put a vector image in a PDF then import that. 2) An alternative to non-TeX fonts would be LuaTeX or XeTeX, wouldn't it? I'm not a user of either, but I've heard good things about LuaTeX.
– Canageek
Oct 25 '11 at 21:28
add a comment |
Just to chime in with a font suggestion: if you do go down that path, the fourier-orns
package loads a lot of nice ornaments that, as the name suggests, are designed to go with Fourier. See the fourier
documentation for details.
add a comment |
I use the dingbats that come with Minion like so:
newcommandanonbreak{fancybreak{reflectbox{char"E0B6} quad char"E0BE quad char"E0B6}vspace{baselineskip}}
add a comment |
You might try perusing some font collections. Here are some free examples; if you're willing to pay a little money or do some work on your own, you can get some really nice ones.
Fonts are the way to go, but the typoasis fonts are just raw foundries, and so don't integrate very well with tex. See my comment below.
– Charles Stewart
Dec 7 '09 at 9:48
2
The link is dead, making the answer completely useless. Flagging as “not an answer”.
– Henri Menke
2 hours ago
add a comment |
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%2f32711%2ftotally-sweet-horizontal-rules-in-latex%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
14 Answers
14
active
oldest
votes
14 Answers
14
active
oldest
votes
active
oldest
votes
active
oldest
votes
You may be interested in pgfornament.
PassOptionsToPackage{svgnames}{xcolor}
documentclass[11pt]{article}
usepackage[object=vectorian]{pgfornament} %% http://altermundus.com/pages/tkz/ornament/index.html
usepackage{lipsum,tikz}
newcommand{sectionline}{%
noindent
begin{center}
{color{DarkViolet}
resizebox{0.5linewidth}{1ex}
{{%
{begin{tikzpicture}
node (C) at (0,0) {};
node (D) at (9,0) {};
path (C) to [ornament=85] (D);
end{tikzpicture}}}}}%
end{center}
}
%% A macro with two arguments to change ornaments and colors easily
%% Syntax -- sectionlinetwo{<color>}{<ornament>}
newcommand{sectionlinetwo}[2]{%
nointerlineskip vspace{.5baselineskip}hspace{fill}
{color{#1}
resizebox{0.5linewidth}{2ex}
{{%
{begin{tikzpicture}
node (C) at (0,0) {};
node (D) at (9,0) {};
path (C) to [ornament=#2] (D);
end{tikzpicture}}}}}%
hspace{fill}
parnointerlineskip vspace{.5baselineskip}
}
begin{document}
lipsum[1]
sectionline
lipsum[2]
sectionlinetwo{magenta}{84}
lipsum[3]
sectionlinetwo{DarkGreen}{88}
end{document}
As pointed by Gonzalo, pgfornaments
can be used without tikzpicture
environment as
newcommand{sectionlinetwo}[2]{%
nointerlineskip vspace{.5baselineskip}hspace{fill}
{resizebox{0.5linewidth}{1.2ex}
{pgfornament[color = #1]{#2}
}}%
hspace{fill}
parnointerlineskip vspace{.5baselineskip}
}
hence making code less cluttered.
add a comment |
You may be interested in pgfornament.
PassOptionsToPackage{svgnames}{xcolor}
documentclass[11pt]{article}
usepackage[object=vectorian]{pgfornament} %% http://altermundus.com/pages/tkz/ornament/index.html
usepackage{lipsum,tikz}
newcommand{sectionline}{%
noindent
begin{center}
{color{DarkViolet}
resizebox{0.5linewidth}{1ex}
{{%
{begin{tikzpicture}
node (C) at (0,0) {};
node (D) at (9,0) {};
path (C) to [ornament=85] (D);
end{tikzpicture}}}}}%
end{center}
}
%% A macro with two arguments to change ornaments and colors easily
%% Syntax -- sectionlinetwo{<color>}{<ornament>}
newcommand{sectionlinetwo}[2]{%
nointerlineskip vspace{.5baselineskip}hspace{fill}
{color{#1}
resizebox{0.5linewidth}{2ex}
{{%
{begin{tikzpicture}
node (C) at (0,0) {};
node (D) at (9,0) {};
path (C) to [ornament=#2] (D);
end{tikzpicture}}}}}%
hspace{fill}
parnointerlineskip vspace{.5baselineskip}
}
begin{document}
lipsum[1]
sectionline
lipsum[2]
sectionlinetwo{magenta}{84}
lipsum[3]
sectionlinetwo{DarkGreen}{88}
end{document}
As pointed by Gonzalo, pgfornaments
can be used without tikzpicture
environment as
newcommand{sectionlinetwo}[2]{%
nointerlineskip vspace{.5baselineskip}hspace{fill}
{resizebox{0.5linewidth}{1.2ex}
{pgfornament[color = #1]{#2}
}}%
hspace{fill}
parnointerlineskip vspace{.5baselineskip}
}
hence making code less cluttered.
add a comment |
You may be interested in pgfornament.
PassOptionsToPackage{svgnames}{xcolor}
documentclass[11pt]{article}
usepackage[object=vectorian]{pgfornament} %% http://altermundus.com/pages/tkz/ornament/index.html
usepackage{lipsum,tikz}
newcommand{sectionline}{%
noindent
begin{center}
{color{DarkViolet}
resizebox{0.5linewidth}{1ex}
{{%
{begin{tikzpicture}
node (C) at (0,0) {};
node (D) at (9,0) {};
path (C) to [ornament=85] (D);
end{tikzpicture}}}}}%
end{center}
}
%% A macro with two arguments to change ornaments and colors easily
%% Syntax -- sectionlinetwo{<color>}{<ornament>}
newcommand{sectionlinetwo}[2]{%
nointerlineskip vspace{.5baselineskip}hspace{fill}
{color{#1}
resizebox{0.5linewidth}{2ex}
{{%
{begin{tikzpicture}
node (C) at (0,0) {};
node (D) at (9,0) {};
path (C) to [ornament=#2] (D);
end{tikzpicture}}}}}%
hspace{fill}
parnointerlineskip vspace{.5baselineskip}
}
begin{document}
lipsum[1]
sectionline
lipsum[2]
sectionlinetwo{magenta}{84}
lipsum[3]
sectionlinetwo{DarkGreen}{88}
end{document}
As pointed by Gonzalo, pgfornaments
can be used without tikzpicture
environment as
newcommand{sectionlinetwo}[2]{%
nointerlineskip vspace{.5baselineskip}hspace{fill}
{resizebox{0.5linewidth}{1.2ex}
{pgfornament[color = #1]{#2}
}}%
hspace{fill}
parnointerlineskip vspace{.5baselineskip}
}
hence making code less cluttered.
You may be interested in pgfornament.
PassOptionsToPackage{svgnames}{xcolor}
documentclass[11pt]{article}
usepackage[object=vectorian]{pgfornament} %% http://altermundus.com/pages/tkz/ornament/index.html
usepackage{lipsum,tikz}
newcommand{sectionline}{%
noindent
begin{center}
{color{DarkViolet}
resizebox{0.5linewidth}{1ex}
{{%
{begin{tikzpicture}
node (C) at (0,0) {};
node (D) at (9,0) {};
path (C) to [ornament=85] (D);
end{tikzpicture}}}}}%
end{center}
}
%% A macro with two arguments to change ornaments and colors easily
%% Syntax -- sectionlinetwo{<color>}{<ornament>}
newcommand{sectionlinetwo}[2]{%
nointerlineskip vspace{.5baselineskip}hspace{fill}
{color{#1}
resizebox{0.5linewidth}{2ex}
{{%
{begin{tikzpicture}
node (C) at (0,0) {};
node (D) at (9,0) {};
path (C) to [ornament=#2] (D);
end{tikzpicture}}}}}%
hspace{fill}
parnointerlineskip vspace{.5baselineskip}
}
begin{document}
lipsum[1]
sectionline
lipsum[2]
sectionlinetwo{magenta}{84}
lipsum[3]
sectionlinetwo{DarkGreen}{88}
end{document}
As pointed by Gonzalo, pgfornaments
can be used without tikzpicture
environment as
newcommand{sectionlinetwo}[2]{%
nointerlineskip vspace{.5baselineskip}hspace{fill}
{resizebox{0.5linewidth}{1.2ex}
{pgfornament[color = #1]{#2}
}}%
hspace{fill}
parnointerlineskip vspace{.5baselineskip}
}
hence making code less cluttered.
edited Oct 20 '12 at 23:52
answered Oct 13 '12 at 17:44
user11232
add a comment |
add a comment |
In general:
rule{width}{height}
macro:
newcommand{sectionline}{%
nointerlineskip vspace{baselineskip}%
hspace{fill}rule{0.5linewidth}{.7pt}hspace{fill}%
parnointerlineskip vspace{baselineskip}
}
3
Removing the %s from the macro made it center the line properly.
– Matt
Sep 3 '11 at 16:56
1
For other users: don't forget that "width" and "height" are in terms of "pt", so the proper usage ofrule
is something along the lines ofrule{500pt}{1pt}
.
– rsegal
Aug 31 '12 at 15:32
I was trying to use this to get a double rule... but this doesn't work. Could you help me to understand why. newcommand{sectionline}{ nointerlineskip vspace{baselineskip} hspace{fill}rule{0.95linewidth}{.7pt} rule{0.95linewidth}{1.7pt}hspace{fill} parnointerlineskip vspace{baselineskip} }
– theobear
Jun 7 '13 at 16:45
add a comment |
In general:
rule{width}{height}
macro:
newcommand{sectionline}{%
nointerlineskip vspace{baselineskip}%
hspace{fill}rule{0.5linewidth}{.7pt}hspace{fill}%
parnointerlineskip vspace{baselineskip}
}
3
Removing the %s from the macro made it center the line properly.
– Matt
Sep 3 '11 at 16:56
1
For other users: don't forget that "width" and "height" are in terms of "pt", so the proper usage ofrule
is something along the lines ofrule{500pt}{1pt}
.
– rsegal
Aug 31 '12 at 15:32
I was trying to use this to get a double rule... but this doesn't work. Could you help me to understand why. newcommand{sectionline}{ nointerlineskip vspace{baselineskip} hspace{fill}rule{0.95linewidth}{.7pt} rule{0.95linewidth}{1.7pt}hspace{fill} parnointerlineskip vspace{baselineskip} }
– theobear
Jun 7 '13 at 16:45
add a comment |
In general:
rule{width}{height}
macro:
newcommand{sectionline}{%
nointerlineskip vspace{baselineskip}%
hspace{fill}rule{0.5linewidth}{.7pt}hspace{fill}%
parnointerlineskip vspace{baselineskip}
}
In general:
rule{width}{height}
macro:
newcommand{sectionline}{%
nointerlineskip vspace{baselineskip}%
hspace{fill}rule{0.5linewidth}{.7pt}hspace{fill}%
parnointerlineskip vspace{baselineskip}
}
answered Feb 6 '09 at 16:39
Łukasz LewŁukasz Lew
3,68393640
3,68393640
3
Removing the %s from the macro made it center the line properly.
– Matt
Sep 3 '11 at 16:56
1
For other users: don't forget that "width" and "height" are in terms of "pt", so the proper usage ofrule
is something along the lines ofrule{500pt}{1pt}
.
– rsegal
Aug 31 '12 at 15:32
I was trying to use this to get a double rule... but this doesn't work. Could you help me to understand why. newcommand{sectionline}{ nointerlineskip vspace{baselineskip} hspace{fill}rule{0.95linewidth}{.7pt} rule{0.95linewidth}{1.7pt}hspace{fill} parnointerlineskip vspace{baselineskip} }
– theobear
Jun 7 '13 at 16:45
add a comment |
3
Removing the %s from the macro made it center the line properly.
– Matt
Sep 3 '11 at 16:56
1
For other users: don't forget that "width" and "height" are in terms of "pt", so the proper usage ofrule
is something along the lines ofrule{500pt}{1pt}
.
– rsegal
Aug 31 '12 at 15:32
I was trying to use this to get a double rule... but this doesn't work. Could you help me to understand why. newcommand{sectionline}{ nointerlineskip vspace{baselineskip} hspace{fill}rule{0.95linewidth}{.7pt} rule{0.95linewidth}{1.7pt}hspace{fill} parnointerlineskip vspace{baselineskip} }
– theobear
Jun 7 '13 at 16:45
3
3
Removing the %s from the macro made it center the line properly.
– Matt
Sep 3 '11 at 16:56
Removing the %s from the macro made it center the line properly.
– Matt
Sep 3 '11 at 16:56
1
1
For other users: don't forget that "width" and "height" are in terms of "pt", so the proper usage of
rule
is something along the lines of rule{500pt}{1pt}
.– rsegal
Aug 31 '12 at 15:32
For other users: don't forget that "width" and "height" are in terms of "pt", so the proper usage of
rule
is something along the lines of rule{500pt}{1pt}
.– rsegal
Aug 31 '12 at 15:32
I was trying to use this to get a double rule... but this doesn't work. Could you help me to understand why. newcommand{sectionline}{ nointerlineskip vspace{baselineskip} hspace{fill}rule{0.95linewidth}{.7pt} rule{0.95linewidth}{1.7pt}hspace{fill} parnointerlineskip vspace{baselineskip} }
– theobear
Jun 7 '13 at 16:45
I was trying to use this to get a double rule... but this doesn't work. Could you help me to understand why. newcommand{sectionline}{ nointerlineskip vspace{baselineskip} hspace{fill}rule{0.95linewidth}{.7pt} rule{0.95linewidth}{1.7pt}hspace{fill} parnointerlineskip vspace{baselineskip} }
– theobear
Jun 7 '13 at 16:45
add a comment |
The web-O-mints
package offers here another option; a little example:
documentclass[12pt]{article}
usepackage[vmargin=2.5cm]{geometry}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{graphicx}
usepackage{fourier}
usepackage[nopar]{lipsum}
newcommanddeco[2]{%
parvspace{1ex}
begin{center}
fontsize{#1}{#1}usefont{U}{webo}{xl}{n}#2
end{center}
vspace*{1ex}par
}
newcounter{mytimes}
newcommandOPpattern{%
loop
ifnumvalue{mytimes}<7relax
stepcounter{mytimes}%
rotatebox{90}{o}raisebox{8pt}{rotatebox{270}{n}}%
repeat}
begin{document}
lipsum[2]
deco{10pt}{IJKLIJKL}
lipsum[2]
deco{16pt}{}
lipsum[2]
deco{10pt}{pqpqpqpqpqpqpqpqpqpq}
lipsum[2]
deco{10pt}{444444444}
lipsum[2]
deco{10pt}{fgfgfgfgfgfgfg}
lipsum[2]
deco{14pt}{OPpattern}
lipsum[2]
deco{12pt}{mmmmmmmmmmmmmm}
lipsum[2]
end{document}
1
Forgive me if I am overlooking something, but I don't see you calling any package named web-0-mint!
– Ludi
Jul 20 '17 at 16:34
add a comment |
The web-O-mints
package offers here another option; a little example:
documentclass[12pt]{article}
usepackage[vmargin=2.5cm]{geometry}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{graphicx}
usepackage{fourier}
usepackage[nopar]{lipsum}
newcommanddeco[2]{%
parvspace{1ex}
begin{center}
fontsize{#1}{#1}usefont{U}{webo}{xl}{n}#2
end{center}
vspace*{1ex}par
}
newcounter{mytimes}
newcommandOPpattern{%
loop
ifnumvalue{mytimes}<7relax
stepcounter{mytimes}%
rotatebox{90}{o}raisebox{8pt}{rotatebox{270}{n}}%
repeat}
begin{document}
lipsum[2]
deco{10pt}{IJKLIJKL}
lipsum[2]
deco{16pt}{}
lipsum[2]
deco{10pt}{pqpqpqpqpqpqpqpqpqpq}
lipsum[2]
deco{10pt}{444444444}
lipsum[2]
deco{10pt}{fgfgfgfgfgfgfg}
lipsum[2]
deco{14pt}{OPpattern}
lipsum[2]
deco{12pt}{mmmmmmmmmmmmmm}
lipsum[2]
end{document}
1
Forgive me if I am overlooking something, but I don't see you calling any package named web-0-mint!
– Ludi
Jul 20 '17 at 16:34
add a comment |
The web-O-mints
package offers here another option; a little example:
documentclass[12pt]{article}
usepackage[vmargin=2.5cm]{geometry}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{graphicx}
usepackage{fourier}
usepackage[nopar]{lipsum}
newcommanddeco[2]{%
parvspace{1ex}
begin{center}
fontsize{#1}{#1}usefont{U}{webo}{xl}{n}#2
end{center}
vspace*{1ex}par
}
newcounter{mytimes}
newcommandOPpattern{%
loop
ifnumvalue{mytimes}<7relax
stepcounter{mytimes}%
rotatebox{90}{o}raisebox{8pt}{rotatebox{270}{n}}%
repeat}
begin{document}
lipsum[2]
deco{10pt}{IJKLIJKL}
lipsum[2]
deco{16pt}{}
lipsum[2]
deco{10pt}{pqpqpqpqpqpqpqpqpqpq}
lipsum[2]
deco{10pt}{444444444}
lipsum[2]
deco{10pt}{fgfgfgfgfgfgfg}
lipsum[2]
deco{14pt}{OPpattern}
lipsum[2]
deco{12pt}{mmmmmmmmmmmmmm}
lipsum[2]
end{document}
The web-O-mints
package offers here another option; a little example:
documentclass[12pt]{article}
usepackage[vmargin=2.5cm]{geometry}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{graphicx}
usepackage{fourier}
usepackage[nopar]{lipsum}
newcommanddeco[2]{%
parvspace{1ex}
begin{center}
fontsize{#1}{#1}usefont{U}{webo}{xl}{n}#2
end{center}
vspace*{1ex}par
}
newcounter{mytimes}
newcommandOPpattern{%
loop
ifnumvalue{mytimes}<7relax
stepcounter{mytimes}%
rotatebox{90}{o}raisebox{8pt}{rotatebox{270}{n}}%
repeat}
begin{document}
lipsum[2]
deco{10pt}{IJKLIJKL}
lipsum[2]
deco{16pt}{}
lipsum[2]
deco{10pt}{pqpqpqpqpqpqpqpqpqpq}
lipsum[2]
deco{10pt}{444444444}
lipsum[2]
deco{10pt}{fgfgfgfgfgfgfg}
lipsum[2]
deco{14pt}{OPpattern}
lipsum[2]
deco{12pt}{mmmmmmmmmmmmmm}
lipsum[2]
end{document}
answered Oct 20 '12 at 23:19
Gonzalo MedinaGonzalo Medina
398k4113041572
398k4113041572
1
Forgive me if I am overlooking something, but I don't see you calling any package named web-0-mint!
– Ludi
Jul 20 '17 at 16:34
add a comment |
1
Forgive me if I am overlooking something, but I don't see you calling any package named web-0-mint!
– Ludi
Jul 20 '17 at 16:34
1
1
Forgive me if I am overlooking something, but I don't see you calling any package named web-0-mint!
– Ludi
Jul 20 '17 at 16:34
Forgive me if I am overlooking something, but I don't see you calling any package named web-0-mint!
– Ludi
Jul 20 '17 at 16:34
add a comment |
Well, we can always appeal to tikz to make these graphic details.
Below you can see some lines with the tikz own endings.
And the picture above was generated from the following code:
documentclass[a4paper, twocolumn]{article}
usepackage{tikz}
usetikzlibrary{arrows}
newcommand{myrule} [3] {
begin{center}
begin{tikzpicture}
draw[#2-#3, ultra thick, #1] (0,0) to (0.5linewidth,0);
end{tikzpicture}
end{center}
}
begin{document}
myrule{}{}
myrule[double]{}{}
myrule{to}{to}
myrule[double]{to}{to}
myrule{to reversed}{to reversed}
myrule[double]{to reversed}{to reversed}
myrule{implies}{implies}
myrule[double]{implies}{implies}
myrule{latex}{latex}
myrule{latex reversed}{latex reversed}
myrule{latex'}{latex'}
myrule{latex' reversed}{latex' reversed}
myrule{stealth}{stealth}
myrule{stealth reversed}{stealth reversed}
myrule{stealth'}{stealth'}
myrule{stealth' reversed}{stealth' reversed}
myrule{triangle 90}{triangle 90}
myrule{triangle 90 reversed}{triangle 90 reversed}
myrule{triangle 60}{triangle 60}
myrule{triangle 60 reversed}{triangle 60 reversed}
myrule{triangle 45}{triangle 45}
myrule{triangle 45 reversed}{triangle 45 reversed}
myrule{open triangle 90}{open triangle 90}
myrule{open triangle 90 reversed}{open triangle 90 reversed}
myrule{open triangle 60}{open triangle 60}
myrule{open triangle 60 reversed}{open triangle 60 reversed}
myrule{open triangle 45}{open triangle 45}
myrule{open triangle 45 reversed}{open triangle 45 reversed}
myrule{angle 90}{angle 90}
myrule{angle 90 reversed}{angle 90 reversed}
myrule{angle 60}{angle 60}
myrule{angle 60 reversed}{angle 60 reversed}
myrule{angle 45}{angle 45}
myrule{angle 45 reversed}{angle 45 reversed}
myrule{hooks}{hooks}
myrule{hooks reversed}{hooks reversed}
myrule{(}{)}
myrule{)}{(}
myrule{|}{|}
myrule{o}{o}
myrule{*}{*}
myrule{diamond}{diamond}
myrule{open diamond}{open diamond}
myrule{square}{square}
myrule{open square}{open square}
myrule{serif cm}{serif cm}
myrule{left to}{left to}
myrule{left to reversed}{left to reversed}
myrule{right to}{right to}
myrule{right to reversed}{right to reversed}
myrule{left hook}{left hook}
myrule{left hook reversed}{left hook reversed}
myrule{right hook}{right hook}
myrule{right hook reversed}{right hook reversed}
myrule[line width = 2mm]{round cap}{round cap}
myrule[line width = 2mm]{butt cap}{butt cap}
myrule[line width = 2mm]{triangle 90 cap}{triangle 90 cap}
myrule[line width = 2mm]{triangle 90 cap reversed}{triangle 90 cap reversed}
myrule[line width = 2mm]{fast cap}{fast cap}
myrule[line width = 2mm]{fast cap reversed}{fast cap reversed}
end{document}
But you can also use more powerful features:
And to generate the image above:
documentclass[a4paper, twocolumn]{article}
usepackage{tikz}
usetikzlibrary{decorations.markings}
usetikzlibrary{decorations.shapes}
usetikzlibrary{shapes.geometric}
usetikzlibrary{decorations.fractals}
usetikzlibrary{decorations.footprints}
tikzset {
, bedknobs one/.style = {
decorate
, fill = red!50
, decoration = {
shape backgrounds
, shape = #1
, shape size = 2mm
}
}
, bedknobs two/.style = {
decorate
, decoration = {
#1
}
, fill = blue!50
}
}
newcommand{bedknobsone}[1]{
begin{center}
tikz draw [bedknobs one = {#1}] (0,0) to (0.5linewidth, 0);
end{center}
}
newcommand{bedknobstwo}[1]{
begin{center}
tikz draw [bedknobs two = {#1}] (0,0) to (0.5linewidth, 0);
end{center}
}
newcommand{bedknobsthree}[1]{
begin{center}
tikz [
decoration = #1
] draw decorate{ decorate{ decorate{ (0, 0) -- (0.5linewidth, 0) }}};
end{center}
}
newcommand{bedknobsfour}{
begin{center}
begin{tikzpicture} [thick]
node[minimum size = 5mm] (first) {};
node[minimum size = 5mm, anchor = west] (second) at (first.east) {};
draw plot [smooth] coordinates {
(first.north) (first.west) (first.south)
(second.north) (second.east) (second.south)
};
end{tikzpicture}
end{center}
}
newcommand{bedknobsfive}{
begin{center}
begin{tikzpicture} [thick]
node[minimum size = 5mm] (first) {};
node[minimum size = 5mm, anchor = west] (second) at (first.east) {};
node[minimum size = 5mm, anchor = west] (space) at (second.east) {};
node[minimum size = 5mm, anchor = west] (third) at (space.east) {};
node[minimum size = 5mm, anchor = west] (fourth) at (third.east) {};
draw plot [smooth] coordinates {
(first.north) (first.west) (first.south)
(second.north) (second.east) (second.south)
};
draw plot [smooth] coordinates {
(fourth.north) (fourth.east) (fourth.south)
(third.north) (third.west) (third.south)
};
end{tikzpicture}
end{center}
}
begin{document}
section {basic}
bedknobstwo{crosses}
bedknobstwo{triangles}
section {shapes}
bedknobsone{dart}
bedknobsone{diamond}
bedknobsone{isosceles triangle}
bedknobsone{star}
bedknobstwo{shape backgrounds, shape scaled, shape start size=2.5mm,shape end size=1mm}
section {footprints}
bedknobstwo{footprints}
bedknobstwo{footprints, foot of = gnome}
bedknobstwo{footprints, foot of = bird}
bedknobstwo{footprints, foot of = felis silvestri}
section {fractals}
bedknobsthree {Koch curve type 1}
bedknobsthree {Koch curve type 2}
bedknobsthree {Koch snowflake}
bedknobsthree {Cantor set}
section {Others}
bedknobsfour
bedknobsfive
end{document}
3
Just a note that it might be a good idea to externalize such things if you use them a lot, because TikZ is slowing the compilation a lot.
– yo'
Oct 13 '12 at 20:55
add a comment |
Well, we can always appeal to tikz to make these graphic details.
Below you can see some lines with the tikz own endings.
And the picture above was generated from the following code:
documentclass[a4paper, twocolumn]{article}
usepackage{tikz}
usetikzlibrary{arrows}
newcommand{myrule} [3] {
begin{center}
begin{tikzpicture}
draw[#2-#3, ultra thick, #1] (0,0) to (0.5linewidth,0);
end{tikzpicture}
end{center}
}
begin{document}
myrule{}{}
myrule[double]{}{}
myrule{to}{to}
myrule[double]{to}{to}
myrule{to reversed}{to reversed}
myrule[double]{to reversed}{to reversed}
myrule{implies}{implies}
myrule[double]{implies}{implies}
myrule{latex}{latex}
myrule{latex reversed}{latex reversed}
myrule{latex'}{latex'}
myrule{latex' reversed}{latex' reversed}
myrule{stealth}{stealth}
myrule{stealth reversed}{stealth reversed}
myrule{stealth'}{stealth'}
myrule{stealth' reversed}{stealth' reversed}
myrule{triangle 90}{triangle 90}
myrule{triangle 90 reversed}{triangle 90 reversed}
myrule{triangle 60}{triangle 60}
myrule{triangle 60 reversed}{triangle 60 reversed}
myrule{triangle 45}{triangle 45}
myrule{triangle 45 reversed}{triangle 45 reversed}
myrule{open triangle 90}{open triangle 90}
myrule{open triangle 90 reversed}{open triangle 90 reversed}
myrule{open triangle 60}{open triangle 60}
myrule{open triangle 60 reversed}{open triangle 60 reversed}
myrule{open triangle 45}{open triangle 45}
myrule{open triangle 45 reversed}{open triangle 45 reversed}
myrule{angle 90}{angle 90}
myrule{angle 90 reversed}{angle 90 reversed}
myrule{angle 60}{angle 60}
myrule{angle 60 reversed}{angle 60 reversed}
myrule{angle 45}{angle 45}
myrule{angle 45 reversed}{angle 45 reversed}
myrule{hooks}{hooks}
myrule{hooks reversed}{hooks reversed}
myrule{(}{)}
myrule{)}{(}
myrule{|}{|}
myrule{o}{o}
myrule{*}{*}
myrule{diamond}{diamond}
myrule{open diamond}{open diamond}
myrule{square}{square}
myrule{open square}{open square}
myrule{serif cm}{serif cm}
myrule{left to}{left to}
myrule{left to reversed}{left to reversed}
myrule{right to}{right to}
myrule{right to reversed}{right to reversed}
myrule{left hook}{left hook}
myrule{left hook reversed}{left hook reversed}
myrule{right hook}{right hook}
myrule{right hook reversed}{right hook reversed}
myrule[line width = 2mm]{round cap}{round cap}
myrule[line width = 2mm]{butt cap}{butt cap}
myrule[line width = 2mm]{triangle 90 cap}{triangle 90 cap}
myrule[line width = 2mm]{triangle 90 cap reversed}{triangle 90 cap reversed}
myrule[line width = 2mm]{fast cap}{fast cap}
myrule[line width = 2mm]{fast cap reversed}{fast cap reversed}
end{document}
But you can also use more powerful features:
And to generate the image above:
documentclass[a4paper, twocolumn]{article}
usepackage{tikz}
usetikzlibrary{decorations.markings}
usetikzlibrary{decorations.shapes}
usetikzlibrary{shapes.geometric}
usetikzlibrary{decorations.fractals}
usetikzlibrary{decorations.footprints}
tikzset {
, bedknobs one/.style = {
decorate
, fill = red!50
, decoration = {
shape backgrounds
, shape = #1
, shape size = 2mm
}
}
, bedknobs two/.style = {
decorate
, decoration = {
#1
}
, fill = blue!50
}
}
newcommand{bedknobsone}[1]{
begin{center}
tikz draw [bedknobs one = {#1}] (0,0) to (0.5linewidth, 0);
end{center}
}
newcommand{bedknobstwo}[1]{
begin{center}
tikz draw [bedknobs two = {#1}] (0,0) to (0.5linewidth, 0);
end{center}
}
newcommand{bedknobsthree}[1]{
begin{center}
tikz [
decoration = #1
] draw decorate{ decorate{ decorate{ (0, 0) -- (0.5linewidth, 0) }}};
end{center}
}
newcommand{bedknobsfour}{
begin{center}
begin{tikzpicture} [thick]
node[minimum size = 5mm] (first) {};
node[minimum size = 5mm, anchor = west] (second) at (first.east) {};
draw plot [smooth] coordinates {
(first.north) (first.west) (first.south)
(second.north) (second.east) (second.south)
};
end{tikzpicture}
end{center}
}
newcommand{bedknobsfive}{
begin{center}
begin{tikzpicture} [thick]
node[minimum size = 5mm] (first) {};
node[minimum size = 5mm, anchor = west] (second) at (first.east) {};
node[minimum size = 5mm, anchor = west] (space) at (second.east) {};
node[minimum size = 5mm, anchor = west] (third) at (space.east) {};
node[minimum size = 5mm, anchor = west] (fourth) at (third.east) {};
draw plot [smooth] coordinates {
(first.north) (first.west) (first.south)
(second.north) (second.east) (second.south)
};
draw plot [smooth] coordinates {
(fourth.north) (fourth.east) (fourth.south)
(third.north) (third.west) (third.south)
};
end{tikzpicture}
end{center}
}
begin{document}
section {basic}
bedknobstwo{crosses}
bedknobstwo{triangles}
section {shapes}
bedknobsone{dart}
bedknobsone{diamond}
bedknobsone{isosceles triangle}
bedknobsone{star}
bedknobstwo{shape backgrounds, shape scaled, shape start size=2.5mm,shape end size=1mm}
section {footprints}
bedknobstwo{footprints}
bedknobstwo{footprints, foot of = gnome}
bedknobstwo{footprints, foot of = bird}
bedknobstwo{footprints, foot of = felis silvestri}
section {fractals}
bedknobsthree {Koch curve type 1}
bedknobsthree {Koch curve type 2}
bedknobsthree {Koch snowflake}
bedknobsthree {Cantor set}
section {Others}
bedknobsfour
bedknobsfive
end{document}
3
Just a note that it might be a good idea to externalize such things if you use them a lot, because TikZ is slowing the compilation a lot.
– yo'
Oct 13 '12 at 20:55
add a comment |
Well, we can always appeal to tikz to make these graphic details.
Below you can see some lines with the tikz own endings.
And the picture above was generated from the following code:
documentclass[a4paper, twocolumn]{article}
usepackage{tikz}
usetikzlibrary{arrows}
newcommand{myrule} [3] {
begin{center}
begin{tikzpicture}
draw[#2-#3, ultra thick, #1] (0,0) to (0.5linewidth,0);
end{tikzpicture}
end{center}
}
begin{document}
myrule{}{}
myrule[double]{}{}
myrule{to}{to}
myrule[double]{to}{to}
myrule{to reversed}{to reversed}
myrule[double]{to reversed}{to reversed}
myrule{implies}{implies}
myrule[double]{implies}{implies}
myrule{latex}{latex}
myrule{latex reversed}{latex reversed}
myrule{latex'}{latex'}
myrule{latex' reversed}{latex' reversed}
myrule{stealth}{stealth}
myrule{stealth reversed}{stealth reversed}
myrule{stealth'}{stealth'}
myrule{stealth' reversed}{stealth' reversed}
myrule{triangle 90}{triangle 90}
myrule{triangle 90 reversed}{triangle 90 reversed}
myrule{triangle 60}{triangle 60}
myrule{triangle 60 reversed}{triangle 60 reversed}
myrule{triangle 45}{triangle 45}
myrule{triangle 45 reversed}{triangle 45 reversed}
myrule{open triangle 90}{open triangle 90}
myrule{open triangle 90 reversed}{open triangle 90 reversed}
myrule{open triangle 60}{open triangle 60}
myrule{open triangle 60 reversed}{open triangle 60 reversed}
myrule{open triangle 45}{open triangle 45}
myrule{open triangle 45 reversed}{open triangle 45 reversed}
myrule{angle 90}{angle 90}
myrule{angle 90 reversed}{angle 90 reversed}
myrule{angle 60}{angle 60}
myrule{angle 60 reversed}{angle 60 reversed}
myrule{angle 45}{angle 45}
myrule{angle 45 reversed}{angle 45 reversed}
myrule{hooks}{hooks}
myrule{hooks reversed}{hooks reversed}
myrule{(}{)}
myrule{)}{(}
myrule{|}{|}
myrule{o}{o}
myrule{*}{*}
myrule{diamond}{diamond}
myrule{open diamond}{open diamond}
myrule{square}{square}
myrule{open square}{open square}
myrule{serif cm}{serif cm}
myrule{left to}{left to}
myrule{left to reversed}{left to reversed}
myrule{right to}{right to}
myrule{right to reversed}{right to reversed}
myrule{left hook}{left hook}
myrule{left hook reversed}{left hook reversed}
myrule{right hook}{right hook}
myrule{right hook reversed}{right hook reversed}
myrule[line width = 2mm]{round cap}{round cap}
myrule[line width = 2mm]{butt cap}{butt cap}
myrule[line width = 2mm]{triangle 90 cap}{triangle 90 cap}
myrule[line width = 2mm]{triangle 90 cap reversed}{triangle 90 cap reversed}
myrule[line width = 2mm]{fast cap}{fast cap}
myrule[line width = 2mm]{fast cap reversed}{fast cap reversed}
end{document}
But you can also use more powerful features:
And to generate the image above:
documentclass[a4paper, twocolumn]{article}
usepackage{tikz}
usetikzlibrary{decorations.markings}
usetikzlibrary{decorations.shapes}
usetikzlibrary{shapes.geometric}
usetikzlibrary{decorations.fractals}
usetikzlibrary{decorations.footprints}
tikzset {
, bedknobs one/.style = {
decorate
, fill = red!50
, decoration = {
shape backgrounds
, shape = #1
, shape size = 2mm
}
}
, bedknobs two/.style = {
decorate
, decoration = {
#1
}
, fill = blue!50
}
}
newcommand{bedknobsone}[1]{
begin{center}
tikz draw [bedknobs one = {#1}] (0,0) to (0.5linewidth, 0);
end{center}
}
newcommand{bedknobstwo}[1]{
begin{center}
tikz draw [bedknobs two = {#1}] (0,0) to (0.5linewidth, 0);
end{center}
}
newcommand{bedknobsthree}[1]{
begin{center}
tikz [
decoration = #1
] draw decorate{ decorate{ decorate{ (0, 0) -- (0.5linewidth, 0) }}};
end{center}
}
newcommand{bedknobsfour}{
begin{center}
begin{tikzpicture} [thick]
node[minimum size = 5mm] (first) {};
node[minimum size = 5mm, anchor = west] (second) at (first.east) {};
draw plot [smooth] coordinates {
(first.north) (first.west) (first.south)
(second.north) (second.east) (second.south)
};
end{tikzpicture}
end{center}
}
newcommand{bedknobsfive}{
begin{center}
begin{tikzpicture} [thick]
node[minimum size = 5mm] (first) {};
node[minimum size = 5mm, anchor = west] (second) at (first.east) {};
node[minimum size = 5mm, anchor = west] (space) at (second.east) {};
node[minimum size = 5mm, anchor = west] (third) at (space.east) {};
node[minimum size = 5mm, anchor = west] (fourth) at (third.east) {};
draw plot [smooth] coordinates {
(first.north) (first.west) (first.south)
(second.north) (second.east) (second.south)
};
draw plot [smooth] coordinates {
(fourth.north) (fourth.east) (fourth.south)
(third.north) (third.west) (third.south)
};
end{tikzpicture}
end{center}
}
begin{document}
section {basic}
bedknobstwo{crosses}
bedknobstwo{triangles}
section {shapes}
bedknobsone{dart}
bedknobsone{diamond}
bedknobsone{isosceles triangle}
bedknobsone{star}
bedknobstwo{shape backgrounds, shape scaled, shape start size=2.5mm,shape end size=1mm}
section {footprints}
bedknobstwo{footprints}
bedknobstwo{footprints, foot of = gnome}
bedknobstwo{footprints, foot of = bird}
bedknobstwo{footprints, foot of = felis silvestri}
section {fractals}
bedknobsthree {Koch curve type 1}
bedknobsthree {Koch curve type 2}
bedknobsthree {Koch snowflake}
bedknobsthree {Cantor set}
section {Others}
bedknobsfour
bedknobsfive
end{document}
Well, we can always appeal to tikz to make these graphic details.
Below you can see some lines with the tikz own endings.
And the picture above was generated from the following code:
documentclass[a4paper, twocolumn]{article}
usepackage{tikz}
usetikzlibrary{arrows}
newcommand{myrule} [3] {
begin{center}
begin{tikzpicture}
draw[#2-#3, ultra thick, #1] (0,0) to (0.5linewidth,0);
end{tikzpicture}
end{center}
}
begin{document}
myrule{}{}
myrule[double]{}{}
myrule{to}{to}
myrule[double]{to}{to}
myrule{to reversed}{to reversed}
myrule[double]{to reversed}{to reversed}
myrule{implies}{implies}
myrule[double]{implies}{implies}
myrule{latex}{latex}
myrule{latex reversed}{latex reversed}
myrule{latex'}{latex'}
myrule{latex' reversed}{latex' reversed}
myrule{stealth}{stealth}
myrule{stealth reversed}{stealth reversed}
myrule{stealth'}{stealth'}
myrule{stealth' reversed}{stealth' reversed}
myrule{triangle 90}{triangle 90}
myrule{triangle 90 reversed}{triangle 90 reversed}
myrule{triangle 60}{triangle 60}
myrule{triangle 60 reversed}{triangle 60 reversed}
myrule{triangle 45}{triangle 45}
myrule{triangle 45 reversed}{triangle 45 reversed}
myrule{open triangle 90}{open triangle 90}
myrule{open triangle 90 reversed}{open triangle 90 reversed}
myrule{open triangle 60}{open triangle 60}
myrule{open triangle 60 reversed}{open triangle 60 reversed}
myrule{open triangle 45}{open triangle 45}
myrule{open triangle 45 reversed}{open triangle 45 reversed}
myrule{angle 90}{angle 90}
myrule{angle 90 reversed}{angle 90 reversed}
myrule{angle 60}{angle 60}
myrule{angle 60 reversed}{angle 60 reversed}
myrule{angle 45}{angle 45}
myrule{angle 45 reversed}{angle 45 reversed}
myrule{hooks}{hooks}
myrule{hooks reversed}{hooks reversed}
myrule{(}{)}
myrule{)}{(}
myrule{|}{|}
myrule{o}{o}
myrule{*}{*}
myrule{diamond}{diamond}
myrule{open diamond}{open diamond}
myrule{square}{square}
myrule{open square}{open square}
myrule{serif cm}{serif cm}
myrule{left to}{left to}
myrule{left to reversed}{left to reversed}
myrule{right to}{right to}
myrule{right to reversed}{right to reversed}
myrule{left hook}{left hook}
myrule{left hook reversed}{left hook reversed}
myrule{right hook}{right hook}
myrule{right hook reversed}{right hook reversed}
myrule[line width = 2mm]{round cap}{round cap}
myrule[line width = 2mm]{butt cap}{butt cap}
myrule[line width = 2mm]{triangle 90 cap}{triangle 90 cap}
myrule[line width = 2mm]{triangle 90 cap reversed}{triangle 90 cap reversed}
myrule[line width = 2mm]{fast cap}{fast cap}
myrule[line width = 2mm]{fast cap reversed}{fast cap reversed}
end{document}
But you can also use more powerful features:
And to generate the image above:
documentclass[a4paper, twocolumn]{article}
usepackage{tikz}
usetikzlibrary{decorations.markings}
usetikzlibrary{decorations.shapes}
usetikzlibrary{shapes.geometric}
usetikzlibrary{decorations.fractals}
usetikzlibrary{decorations.footprints}
tikzset {
, bedknobs one/.style = {
decorate
, fill = red!50
, decoration = {
shape backgrounds
, shape = #1
, shape size = 2mm
}
}
, bedknobs two/.style = {
decorate
, decoration = {
#1
}
, fill = blue!50
}
}
newcommand{bedknobsone}[1]{
begin{center}
tikz draw [bedknobs one = {#1}] (0,0) to (0.5linewidth, 0);
end{center}
}
newcommand{bedknobstwo}[1]{
begin{center}
tikz draw [bedknobs two = {#1}] (0,0) to (0.5linewidth, 0);
end{center}
}
newcommand{bedknobsthree}[1]{
begin{center}
tikz [
decoration = #1
] draw decorate{ decorate{ decorate{ (0, 0) -- (0.5linewidth, 0) }}};
end{center}
}
newcommand{bedknobsfour}{
begin{center}
begin{tikzpicture} [thick]
node[minimum size = 5mm] (first) {};
node[minimum size = 5mm, anchor = west] (second) at (first.east) {};
draw plot [smooth] coordinates {
(first.north) (first.west) (first.south)
(second.north) (second.east) (second.south)
};
end{tikzpicture}
end{center}
}
newcommand{bedknobsfive}{
begin{center}
begin{tikzpicture} [thick]
node[minimum size = 5mm] (first) {};
node[minimum size = 5mm, anchor = west] (second) at (first.east) {};
node[minimum size = 5mm, anchor = west] (space) at (second.east) {};
node[minimum size = 5mm, anchor = west] (third) at (space.east) {};
node[minimum size = 5mm, anchor = west] (fourth) at (third.east) {};
draw plot [smooth] coordinates {
(first.north) (first.west) (first.south)
(second.north) (second.east) (second.south)
};
draw plot [smooth] coordinates {
(fourth.north) (fourth.east) (fourth.south)
(third.north) (third.west) (third.south)
};
end{tikzpicture}
end{center}
}
begin{document}
section {basic}
bedknobstwo{crosses}
bedknobstwo{triangles}
section {shapes}
bedknobsone{dart}
bedknobsone{diamond}
bedknobsone{isosceles triangle}
bedknobsone{star}
bedknobstwo{shape backgrounds, shape scaled, shape start size=2.5mm,shape end size=1mm}
section {footprints}
bedknobstwo{footprints}
bedknobstwo{footprints, foot of = gnome}
bedknobstwo{footprints, foot of = bird}
bedknobstwo{footprints, foot of = felis silvestri}
section {fractals}
bedknobsthree {Koch curve type 1}
bedknobsthree {Koch curve type 2}
bedknobsthree {Koch snowflake}
bedknobsthree {Cantor set}
section {Others}
bedknobsfour
bedknobsfive
end{document}
answered Oct 13 '12 at 16:00
tecepetecepe
1,8771016
1,8771016
3
Just a note that it might be a good idea to externalize such things if you use them a lot, because TikZ is slowing the compilation a lot.
– yo'
Oct 13 '12 at 20:55
add a comment |
3
Just a note that it might be a good idea to externalize such things if you use them a lot, because TikZ is slowing the compilation a lot.
– yo'
Oct 13 '12 at 20:55
3
3
Just a note that it might be a good idea to externalize such things if you use them a lot, because TikZ is slowing the compilation a lot.
– yo'
Oct 13 '12 at 20:55
Just a note that it might be a good idea to externalize such things if you use them a lot, because TikZ is slowing the compilation a lot.
– yo'
Oct 13 '12 at 20:55
add a comment |
memoir
document class has facilities to draw these "totally sweet" anonymous breaks. See section 6.7 Fancy anonymous breaks (page 109-111) of the manual for details.
Hi @Seamus, I looked at the Memoir class and it does seem to have beautiful separators. How would I go about importing some of these if I were to use another document class?
– tchakravarty
Nov 5 '11 at 23:47
2
@FgNu That sounds like a new question...
– Seamus
Nov 6 '11 at 21:26
1
I changed the manual reference to include the section name, as the page count had changed a little in newer version (the one I have is dated 2011/03/06). I assume that was the section you were referring to.
– Torbjørn T.
Oct 13 '12 at 7:25
add a comment |
memoir
document class has facilities to draw these "totally sweet" anonymous breaks. See section 6.7 Fancy anonymous breaks (page 109-111) of the manual for details.
Hi @Seamus, I looked at the Memoir class and it does seem to have beautiful separators. How would I go about importing some of these if I were to use another document class?
– tchakravarty
Nov 5 '11 at 23:47
2
@FgNu That sounds like a new question...
– Seamus
Nov 6 '11 at 21:26
1
I changed the manual reference to include the section name, as the page count had changed a little in newer version (the one I have is dated 2011/03/06). I assume that was the section you were referring to.
– Torbjørn T.
Oct 13 '12 at 7:25
add a comment |
memoir
document class has facilities to draw these "totally sweet" anonymous breaks. See section 6.7 Fancy anonymous breaks (page 109-111) of the manual for details.
memoir
document class has facilities to draw these "totally sweet" anonymous breaks. See section 6.7 Fancy anonymous breaks (page 109-111) of the manual for details.
edited Oct 13 '12 at 7:23
Torbjørn T.
156k13251439
156k13251439
answered Nov 26 '09 at 12:17
SeamusSeamus
45.3k35217332
45.3k35217332
Hi @Seamus, I looked at the Memoir class and it does seem to have beautiful separators. How would I go about importing some of these if I were to use another document class?
– tchakravarty
Nov 5 '11 at 23:47
2
@FgNu That sounds like a new question...
– Seamus
Nov 6 '11 at 21:26
1
I changed the manual reference to include the section name, as the page count had changed a little in newer version (the one I have is dated 2011/03/06). I assume that was the section you were referring to.
– Torbjørn T.
Oct 13 '12 at 7:25
add a comment |
Hi @Seamus, I looked at the Memoir class and it does seem to have beautiful separators. How would I go about importing some of these if I were to use another document class?
– tchakravarty
Nov 5 '11 at 23:47
2
@FgNu That sounds like a new question...
– Seamus
Nov 6 '11 at 21:26
1
I changed the manual reference to include the section name, as the page count had changed a little in newer version (the one I have is dated 2011/03/06). I assume that was the section you were referring to.
– Torbjørn T.
Oct 13 '12 at 7:25
Hi @Seamus, I looked at the Memoir class and it does seem to have beautiful separators. How would I go about importing some of these if I were to use another document class?
– tchakravarty
Nov 5 '11 at 23:47
Hi @Seamus, I looked at the Memoir class and it does seem to have beautiful separators. How would I go about importing some of these if I were to use another document class?
– tchakravarty
Nov 5 '11 at 23:47
2
2
@FgNu That sounds like a new question...
– Seamus
Nov 6 '11 at 21:26
@FgNu That sounds like a new question...
– Seamus
Nov 6 '11 at 21:26
1
1
I changed the manual reference to include the section name, as the page count had changed a little in newer version (the one I have is dated 2011/03/06). I assume that was the section you were referring to.
– Torbjørn T.
Oct 13 '12 at 7:25
I changed the manual reference to include the section name, as the page count had changed a little in newer version (the one I have is dated 2011/03/06). I assume that was the section you were referring to.
– Torbjørn T.
Oct 13 '12 at 7:25
add a comment |
I used this image and then this code:
In header:
newcommand{parasep}{
begin{center}
includegraphics[scale=.5]{hrule.png}
end{center}}
In body where you want the image:
parasep
Oh and remember to:
usepackage{graphicx}
Cf. my comment on dreamlax's post, below.
– Charles Stewart
Dec 7 '09 at 9:49
i get this error: ! Missing endcsname inserted. <to be read again> unhbox ? I have no idea why?
– Andreas
Dec 17 '09 at 10:13
In which implementation you can provide the filename with the extension on?
– souser12345
Sep 2 '10 at 17:32
add a comment |
I used this image and then this code:
In header:
newcommand{parasep}{
begin{center}
includegraphics[scale=.5]{hrule.png}
end{center}}
In body where you want the image:
parasep
Oh and remember to:
usepackage{graphicx}
Cf. my comment on dreamlax's post, below.
– Charles Stewart
Dec 7 '09 at 9:49
i get this error: ! Missing endcsname inserted. <to be read again> unhbox ? I have no idea why?
– Andreas
Dec 17 '09 at 10:13
In which implementation you can provide the filename with the extension on?
– souser12345
Sep 2 '10 at 17:32
add a comment |
I used this image and then this code:
In header:
newcommand{parasep}{
begin{center}
includegraphics[scale=.5]{hrule.png}
end{center}}
In body where you want the image:
parasep
Oh and remember to:
usepackage{graphicx}
I used this image and then this code:
In header:
newcommand{parasep}{
begin{center}
includegraphics[scale=.5]{hrule.png}
end{center}}
In body where you want the image:
parasep
Oh and remember to:
usepackage{graphicx}
edited Oct 13 '12 at 5:16
Werner
443k679781675
443k679781675
answered May 14 '09 at 10:19
Mike SpeedMike Speed
38133
38133
Cf. my comment on dreamlax's post, below.
– Charles Stewart
Dec 7 '09 at 9:49
i get this error: ! Missing endcsname inserted. <to be read again> unhbox ? I have no idea why?
– Andreas
Dec 17 '09 at 10:13
In which implementation you can provide the filename with the extension on?
– souser12345
Sep 2 '10 at 17:32
add a comment |
Cf. my comment on dreamlax's post, below.
– Charles Stewart
Dec 7 '09 at 9:49
i get this error: ! Missing endcsname inserted. <to be read again> unhbox ? I have no idea why?
– Andreas
Dec 17 '09 at 10:13
In which implementation you can provide the filename with the extension on?
– souser12345
Sep 2 '10 at 17:32
Cf. my comment on dreamlax's post, below.
– Charles Stewart
Dec 7 '09 at 9:49
Cf. my comment on dreamlax's post, below.
– Charles Stewart
Dec 7 '09 at 9:49
i get this error: ! Missing endcsname inserted. <to be read again> unhbox ? I have no idea why?
– Andreas
Dec 17 '09 at 10:13
i get this error: ! Missing endcsname inserted. <to be read again> unhbox ? I have no idea why?
– Andreas
Dec 17 '09 at 10:13
In which implementation you can provide the filename with the extension on?
– souser12345
Sep 2 '10 at 17:32
In which implementation you can provide the filename with the extension on?
– souser12345
Sep 2 '10 at 17:32
add a comment |
The xhfill
package provides an array of leaders and colours to create straight-forward, sweet rules. The following is taken mostly from the xhfill
documentation:
documentclass{article}
usepackage{listings}% http://ctan.org/pkg/listings
lstset{language=[LaTeX]TeX,
basicstyle=smallttfamily}
%usepackage{xcolor}% http://ctan.org/pkg/xcolor | Loaded by listings
usepackage{xhfill}% http://ctan.org/pkg/xhfill
setlength{parindent}{0pt}% Just for this example
newcommand{xfill}[2][1ex]{{%
dimen0=#2advancedimen0 by #1
leadershrule height dimen0 depth -#1hfill%
}}
newcommand{xfilll}[2][1ex]{%
dimen0=#2advancedimen0 by #1%
leadershrule height dimen0 depth -#1hfill%
}
begin{document}
blahxfilll{1pt}blub
begin{lstlisting}
blahxfilll{1pt}blub
end{lstlisting}
bigskip
blahxfilll[0pt]{4pt}blub
begin{lstlisting}
blahxfilll[0pt]{4pt}blub
end{lstlisting}
bigskip
blahxfilll[-12pt]{12pt}blub
begin{lstlisting}
blahxfilll[-12pt]{12pt}blub
end{lstlisting}
bigskip
blahxrfill{1pt}[blue]blub blahxrfill{2pt}[cyan]blub
begin{lstlisting}
blahxrfill{1pt}[blue]blub blahxrfill{2pt}[cyan]blub
end{lstlisting}
bigskip
laberxrfill[0pt]{4pt}[green]blub blub
begin{lstlisting}
laberxrfill[0pt]{4pt}[green]blub blub
end{lstlisting}
bigskip
blahxrfill[-1ex]{1pt}[red]blub
begin{lstlisting}
blahxrfill[-1ex]{1pt}[red]blub
end{lstlisting}
bigskip
blah xhrulefill{cyan}{1cm} blub
begin{lstlisting}
blah xhrulefill{cyan}{1cm} blub
end{lstlisting}
bigskip
blah xhrectanglefill{0.5cm}{1pt} blubber
begin{lstlisting}
blah xhrectanglefill{0.5cm}{1pt} blubber
end{lstlisting}
bigskip
blahxdotfill{1pt}[blue]blahxdotfill{2pt}[red]blub
begin{lstlisting}
blahxdotfill{1pt}[blue]blahxdotfill{2pt}[red]blub
end{lstlisting}
end{document}
This works for me, but not with the command shown (xfilll
) nor with the one in the package's documentation (xfill
). What worked was what's given as a comment under Usage inxhfill.sty
:xhrulefill{blue}{5pt}
.
– Liam
Dec 26 '15 at 20:55
add a comment |
The xhfill
package provides an array of leaders and colours to create straight-forward, sweet rules. The following is taken mostly from the xhfill
documentation:
documentclass{article}
usepackage{listings}% http://ctan.org/pkg/listings
lstset{language=[LaTeX]TeX,
basicstyle=smallttfamily}
%usepackage{xcolor}% http://ctan.org/pkg/xcolor | Loaded by listings
usepackage{xhfill}% http://ctan.org/pkg/xhfill
setlength{parindent}{0pt}% Just for this example
newcommand{xfill}[2][1ex]{{%
dimen0=#2advancedimen0 by #1
leadershrule height dimen0 depth -#1hfill%
}}
newcommand{xfilll}[2][1ex]{%
dimen0=#2advancedimen0 by #1%
leadershrule height dimen0 depth -#1hfill%
}
begin{document}
blahxfilll{1pt}blub
begin{lstlisting}
blahxfilll{1pt}blub
end{lstlisting}
bigskip
blahxfilll[0pt]{4pt}blub
begin{lstlisting}
blahxfilll[0pt]{4pt}blub
end{lstlisting}
bigskip
blahxfilll[-12pt]{12pt}blub
begin{lstlisting}
blahxfilll[-12pt]{12pt}blub
end{lstlisting}
bigskip
blahxrfill{1pt}[blue]blub blahxrfill{2pt}[cyan]blub
begin{lstlisting}
blahxrfill{1pt}[blue]blub blahxrfill{2pt}[cyan]blub
end{lstlisting}
bigskip
laberxrfill[0pt]{4pt}[green]blub blub
begin{lstlisting}
laberxrfill[0pt]{4pt}[green]blub blub
end{lstlisting}
bigskip
blahxrfill[-1ex]{1pt}[red]blub
begin{lstlisting}
blahxrfill[-1ex]{1pt}[red]blub
end{lstlisting}
bigskip
blah xhrulefill{cyan}{1cm} blub
begin{lstlisting}
blah xhrulefill{cyan}{1cm} blub
end{lstlisting}
bigskip
blah xhrectanglefill{0.5cm}{1pt} blubber
begin{lstlisting}
blah xhrectanglefill{0.5cm}{1pt} blubber
end{lstlisting}
bigskip
blahxdotfill{1pt}[blue]blahxdotfill{2pt}[red]blub
begin{lstlisting}
blahxdotfill{1pt}[blue]blahxdotfill{2pt}[red]blub
end{lstlisting}
end{document}
This works for me, but not with the command shown (xfilll
) nor with the one in the package's documentation (xfill
). What worked was what's given as a comment under Usage inxhfill.sty
:xhrulefill{blue}{5pt}
.
– Liam
Dec 26 '15 at 20:55
add a comment |
The xhfill
package provides an array of leaders and colours to create straight-forward, sweet rules. The following is taken mostly from the xhfill
documentation:
documentclass{article}
usepackage{listings}% http://ctan.org/pkg/listings
lstset{language=[LaTeX]TeX,
basicstyle=smallttfamily}
%usepackage{xcolor}% http://ctan.org/pkg/xcolor | Loaded by listings
usepackage{xhfill}% http://ctan.org/pkg/xhfill
setlength{parindent}{0pt}% Just for this example
newcommand{xfill}[2][1ex]{{%
dimen0=#2advancedimen0 by #1
leadershrule height dimen0 depth -#1hfill%
}}
newcommand{xfilll}[2][1ex]{%
dimen0=#2advancedimen0 by #1%
leadershrule height dimen0 depth -#1hfill%
}
begin{document}
blahxfilll{1pt}blub
begin{lstlisting}
blahxfilll{1pt}blub
end{lstlisting}
bigskip
blahxfilll[0pt]{4pt}blub
begin{lstlisting}
blahxfilll[0pt]{4pt}blub
end{lstlisting}
bigskip
blahxfilll[-12pt]{12pt}blub
begin{lstlisting}
blahxfilll[-12pt]{12pt}blub
end{lstlisting}
bigskip
blahxrfill{1pt}[blue]blub blahxrfill{2pt}[cyan]blub
begin{lstlisting}
blahxrfill{1pt}[blue]blub blahxrfill{2pt}[cyan]blub
end{lstlisting}
bigskip
laberxrfill[0pt]{4pt}[green]blub blub
begin{lstlisting}
laberxrfill[0pt]{4pt}[green]blub blub
end{lstlisting}
bigskip
blahxrfill[-1ex]{1pt}[red]blub
begin{lstlisting}
blahxrfill[-1ex]{1pt}[red]blub
end{lstlisting}
bigskip
blah xhrulefill{cyan}{1cm} blub
begin{lstlisting}
blah xhrulefill{cyan}{1cm} blub
end{lstlisting}
bigskip
blah xhrectanglefill{0.5cm}{1pt} blubber
begin{lstlisting}
blah xhrectanglefill{0.5cm}{1pt} blubber
end{lstlisting}
bigskip
blahxdotfill{1pt}[blue]blahxdotfill{2pt}[red]blub
begin{lstlisting}
blahxdotfill{1pt}[blue]blahxdotfill{2pt}[red]blub
end{lstlisting}
end{document}
The xhfill
package provides an array of leaders and colours to create straight-forward, sweet rules. The following is taken mostly from the xhfill
documentation:
documentclass{article}
usepackage{listings}% http://ctan.org/pkg/listings
lstset{language=[LaTeX]TeX,
basicstyle=smallttfamily}
%usepackage{xcolor}% http://ctan.org/pkg/xcolor | Loaded by listings
usepackage{xhfill}% http://ctan.org/pkg/xhfill
setlength{parindent}{0pt}% Just for this example
newcommand{xfill}[2][1ex]{{%
dimen0=#2advancedimen0 by #1
leadershrule height dimen0 depth -#1hfill%
}}
newcommand{xfilll}[2][1ex]{%
dimen0=#2advancedimen0 by #1%
leadershrule height dimen0 depth -#1hfill%
}
begin{document}
blahxfilll{1pt}blub
begin{lstlisting}
blahxfilll{1pt}blub
end{lstlisting}
bigskip
blahxfilll[0pt]{4pt}blub
begin{lstlisting}
blahxfilll[0pt]{4pt}blub
end{lstlisting}
bigskip
blahxfilll[-12pt]{12pt}blub
begin{lstlisting}
blahxfilll[-12pt]{12pt}blub
end{lstlisting}
bigskip
blahxrfill{1pt}[blue]blub blahxrfill{2pt}[cyan]blub
begin{lstlisting}
blahxrfill{1pt}[blue]blub blahxrfill{2pt}[cyan]blub
end{lstlisting}
bigskip
laberxrfill[0pt]{4pt}[green]blub blub
begin{lstlisting}
laberxrfill[0pt]{4pt}[green]blub blub
end{lstlisting}
bigskip
blahxrfill[-1ex]{1pt}[red]blub
begin{lstlisting}
blahxrfill[-1ex]{1pt}[red]blub
end{lstlisting}
bigskip
blah xhrulefill{cyan}{1cm} blub
begin{lstlisting}
blah xhrulefill{cyan}{1cm} blub
end{lstlisting}
bigskip
blah xhrectanglefill{0.5cm}{1pt} blubber
begin{lstlisting}
blah xhrectanglefill{0.5cm}{1pt} blubber
end{lstlisting}
bigskip
blahxdotfill{1pt}[blue]blahxdotfill{2pt}[red]blub
begin{lstlisting}
blahxdotfill{1pt}[blue]blahxdotfill{2pt}[red]blub
end{lstlisting}
end{document}
answered Oct 13 '12 at 5:16
WernerWerner
443k679781675
443k679781675
This works for me, but not with the command shown (xfilll
) nor with the one in the package's documentation (xfill
). What worked was what's given as a comment under Usage inxhfill.sty
:xhrulefill{blue}{5pt}
.
– Liam
Dec 26 '15 at 20:55
add a comment |
This works for me, but not with the command shown (xfilll
) nor with the one in the package's documentation (xfill
). What worked was what's given as a comment under Usage inxhfill.sty
:xhrulefill{blue}{5pt}
.
– Liam
Dec 26 '15 at 20:55
This works for me, but not with the command shown (
xfilll
) nor with the one in the package's documentation (xfill
). What worked was what's given as a comment under Usage in xhfill.sty
: xhrulefill{blue}{5pt}
.– Liam
Dec 26 '15 at 20:55
This works for me, but not with the command shown (
xfilll
) nor with the one in the package's documentation (xfill
). What worked was what's given as a comment under Usage in xhfill.sty
: xhrulefill{blue}{5pt}
.– Liam
Dec 26 '15 at 20:55
add a comment |
You might want to install the webomint
fonsts from CTAN. There are a lot of ornaments in this font. Then one possibility would be:
documentclass[11pt]{article}
usepackage{graphicx}
usepackage{lipsum}
makeatletter
newcommand{EnglischeLinie}{%
@afterindentfalse
{begin{center}
resizebox{0.8linewidth}{0.4ex}{{%
fontsize{20}{24}usefont{U}{webo}{xl}{n}{4}}}%
end{center}}@afterheading}
makeatother
begin{document}
lipsum[1]
EnglischeLinie
lipsum[1]
end{document}
This will look like this:
You may play around with this.
add a comment |
You might want to install the webomint
fonsts from CTAN. There are a lot of ornaments in this font. Then one possibility would be:
documentclass[11pt]{article}
usepackage{graphicx}
usepackage{lipsum}
makeatletter
newcommand{EnglischeLinie}{%
@afterindentfalse
{begin{center}
resizebox{0.8linewidth}{0.4ex}{{%
fontsize{20}{24}usefont{U}{webo}{xl}{n}{4}}}%
end{center}}@afterheading}
makeatother
begin{document}
lipsum[1]
EnglischeLinie
lipsum[1]
end{document}
This will look like this:
You may play around with this.
add a comment |
You might want to install the webomint
fonsts from CTAN. There are a lot of ornaments in this font. Then one possibility would be:
documentclass[11pt]{article}
usepackage{graphicx}
usepackage{lipsum}
makeatletter
newcommand{EnglischeLinie}{%
@afterindentfalse
{begin{center}
resizebox{0.8linewidth}{0.4ex}{{%
fontsize{20}{24}usefont{U}{webo}{xl}{n}{4}}}%
end{center}}@afterheading}
makeatother
begin{document}
lipsum[1]
EnglischeLinie
lipsum[1]
end{document}
This will look like this:
You may play around with this.
You might want to install the webomint
fonsts from CTAN. There are a lot of ornaments in this font. Then one possibility would be:
documentclass[11pt]{article}
usepackage{graphicx}
usepackage{lipsum}
makeatletter
newcommand{EnglischeLinie}{%
@afterindentfalse
{begin{center}
resizebox{0.8linewidth}{0.4ex}{{%
fontsize{20}{24}usefont{U}{webo}{xl}{n}{4}}}%
end{center}}@afterheading}
makeatother
begin{document}
lipsum[1]
EnglischeLinie
lipsum[1]
end{document}
This will look like this:
You may play around with this.
answered Oct 13 '12 at 15:05
Peter BreitfeldPeter Breitfeld
2,99111212
2,99111212
add a comment |
add a comment |
In TeX, there is a primitive command leaders
which is able to take an hbox
and replicate it as many times as necessary to fill a specific amount of glue (which can be the entire with of the page if necessary). Each box that it lays down will stick to a vertical grid, so that boxes laid directly below will be in-line with the ones above (so they don't appear out of sync). This technique is commonly used for tables of contents.
You can supply your own custom graphic and box to have a repeating pattern used as a line.
usepackage{graphicx}
newcommand{nicehline}{%
parnoindent
leadershbox to 1in{includegraphics{somethingnice.png}}hfill
par
}
Lorem ipsum dolor sit amet.
nicehline
Lorem ipsum dolor sit amet.
Of course, you'll need to supply your own somethingnice.png
, or alternatively use a dingbat. Perhaps it may be better to save the graphic into its own box register if it will mean the graphics are only included once and referenced thereafter (as opposed to included each time it is to be displayed).
This is basically the right way to do it, but using metafont/metapost pictures as fonts may give better results than embedding png/eps/&c graphics, since they will scale well.
– Charles Stewart
Dec 7 '09 at 9:45
add a comment |
In TeX, there is a primitive command leaders
which is able to take an hbox
and replicate it as many times as necessary to fill a specific amount of glue (which can be the entire with of the page if necessary). Each box that it lays down will stick to a vertical grid, so that boxes laid directly below will be in-line with the ones above (so they don't appear out of sync). This technique is commonly used for tables of contents.
You can supply your own custom graphic and box to have a repeating pattern used as a line.
usepackage{graphicx}
newcommand{nicehline}{%
parnoindent
leadershbox to 1in{includegraphics{somethingnice.png}}hfill
par
}
Lorem ipsum dolor sit amet.
nicehline
Lorem ipsum dolor sit amet.
Of course, you'll need to supply your own somethingnice.png
, or alternatively use a dingbat. Perhaps it may be better to save the graphic into its own box register if it will mean the graphics are only included once and referenced thereafter (as opposed to included each time it is to be displayed).
This is basically the right way to do it, but using metafont/metapost pictures as fonts may give better results than embedding png/eps/&c graphics, since they will scale well.
– Charles Stewart
Dec 7 '09 at 9:45
add a comment |
In TeX, there is a primitive command leaders
which is able to take an hbox
and replicate it as many times as necessary to fill a specific amount of glue (which can be the entire with of the page if necessary). Each box that it lays down will stick to a vertical grid, so that boxes laid directly below will be in-line with the ones above (so they don't appear out of sync). This technique is commonly used for tables of contents.
You can supply your own custom graphic and box to have a repeating pattern used as a line.
usepackage{graphicx}
newcommand{nicehline}{%
parnoindent
leadershbox to 1in{includegraphics{somethingnice.png}}hfill
par
}
Lorem ipsum dolor sit amet.
nicehline
Lorem ipsum dolor sit amet.
Of course, you'll need to supply your own somethingnice.png
, or alternatively use a dingbat. Perhaps it may be better to save the graphic into its own box register if it will mean the graphics are only included once and referenced thereafter (as opposed to included each time it is to be displayed).
In TeX, there is a primitive command leaders
which is able to take an hbox
and replicate it as many times as necessary to fill a specific amount of glue (which can be the entire with of the page if necessary). Each box that it lays down will stick to a vertical grid, so that boxes laid directly below will be in-line with the ones above (so they don't appear out of sync). This technique is commonly used for tables of contents.
You can supply your own custom graphic and box to have a repeating pattern used as a line.
usepackage{graphicx}
newcommand{nicehline}{%
parnoindent
leadershbox to 1in{includegraphics{somethingnice.png}}hfill
par
}
Lorem ipsum dolor sit amet.
nicehline
Lorem ipsum dolor sit amet.
Of course, you'll need to supply your own somethingnice.png
, or alternatively use a dingbat. Perhaps it may be better to save the graphic into its own box register if it will mean the graphics are only included once and referenced thereafter (as opposed to included each time it is to be displayed).
answered Jun 7 '09 at 11:39
dreamlaxdreamlax
359213
359213
This is basically the right way to do it, but using metafont/metapost pictures as fonts may give better results than embedding png/eps/&c graphics, since they will scale well.
– Charles Stewart
Dec 7 '09 at 9:45
add a comment |
This is basically the right way to do it, but using metafont/metapost pictures as fonts may give better results than embedding png/eps/&c graphics, since they will scale well.
– Charles Stewart
Dec 7 '09 at 9:45
This is basically the right way to do it, but using metafont/metapost pictures as fonts may give better results than embedding png/eps/&c graphics, since they will scale well.
– Charles Stewart
Dec 7 '09 at 9:45
This is basically the right way to do it, but using metafont/metapost pictures as fonts may give better results than embedding png/eps/&c graphics, since they will scale well.
– Charles Stewart
Dec 7 '09 at 9:45
add a comment |
Everything I've ever read defines a custom command for fancy graphical paragraph separators. Nothing in latex adds bedknobs or any fancy decorations, and I can't find any packages which add such functionality.
The example I've seen is typically:
newcommand{parasep}{begin{center}*hspace{6em}*hspace{6em}*end{center}}
Obviously from here you could replace the asterisks with something more visually appealing.
@jasedit I tried to resolve the bedknobs issue, but realized my hands were handcuffed to them.
– Nicholas Hamilton
May 22 '13 at 20:23
add a comment |
Everything I've ever read defines a custom command for fancy graphical paragraph separators. Nothing in latex adds bedknobs or any fancy decorations, and I can't find any packages which add such functionality.
The example I've seen is typically:
newcommand{parasep}{begin{center}*hspace{6em}*hspace{6em}*end{center}}
Obviously from here you could replace the asterisks with something more visually appealing.
@jasedit I tried to resolve the bedknobs issue, but realized my hands were handcuffed to them.
– Nicholas Hamilton
May 22 '13 at 20:23
add a comment |
Everything I've ever read defines a custom command for fancy graphical paragraph separators. Nothing in latex adds bedknobs or any fancy decorations, and I can't find any packages which add such functionality.
The example I've seen is typically:
newcommand{parasep}{begin{center}*hspace{6em}*hspace{6em}*end{center}}
Obviously from here you could replace the asterisks with something more visually appealing.
Everything I've ever read defines a custom command for fancy graphical paragraph separators. Nothing in latex adds bedknobs or any fancy decorations, and I can't find any packages which add such functionality.
The example I've seen is typically:
newcommand{parasep}{begin{center}*hspace{6em}*hspace{6em}*end{center}}
Obviously from here you could replace the asterisks with something more visually appealing.
answered Feb 6 '09 at 16:50
jaseditjasedit
1813
1813
@jasedit I tried to resolve the bedknobs issue, but realized my hands were handcuffed to them.
– Nicholas Hamilton
May 22 '13 at 20:23
add a comment |
@jasedit I tried to resolve the bedknobs issue, but realized my hands were handcuffed to them.
– Nicholas Hamilton
May 22 '13 at 20:23
@jasedit I tried to resolve the bedknobs issue, but realized my hands were handcuffed to them.
– Nicholas Hamilton
May 22 '13 at 20:23
@jasedit I tried to resolve the bedknobs issue, but realized my hands were handcuffed to them.
– Nicholas Hamilton
May 22 '13 at 20:23
add a comment |
Just to reiterate: you can get better results with fonts than embedded images, and better results with TeX-native font representations (e.g., MetaFont), than with TrueType fonts.
Noah, above, linked to typoasis, which has some mouthwateringly beautiful fonts, but they are alien to TeX, so you might not get ideal results with them.
Zapfino, Hermann Zapf's calligraphic font, is worth a look: Zapf worked with Knuth on this, and some other, fonts, so it is all done The Right Way.
If you do make use of TeX-alien fonts, it is best to import tham as MetaType1 fonts using, say, the pf2mt1 utility; cf. the CTAN metatype1 package's README for some info.
1) Couldn't you use a vector-image for nice results? I know that LaTeX doesn't support actual image formats like SVG, but you can put a vector image in a PDF then import that. 2) An alternative to non-TeX fonts would be LuaTeX or XeTeX, wouldn't it? I'm not a user of either, but I've heard good things about LuaTeX.
– Canageek
Oct 25 '11 at 21:28
add a comment |
Just to reiterate: you can get better results with fonts than embedded images, and better results with TeX-native font representations (e.g., MetaFont), than with TrueType fonts.
Noah, above, linked to typoasis, which has some mouthwateringly beautiful fonts, but they are alien to TeX, so you might not get ideal results with them.
Zapfino, Hermann Zapf's calligraphic font, is worth a look: Zapf worked with Knuth on this, and some other, fonts, so it is all done The Right Way.
If you do make use of TeX-alien fonts, it is best to import tham as MetaType1 fonts using, say, the pf2mt1 utility; cf. the CTAN metatype1 package's README for some info.
1) Couldn't you use a vector-image for nice results? I know that LaTeX doesn't support actual image formats like SVG, but you can put a vector image in a PDF then import that. 2) An alternative to non-TeX fonts would be LuaTeX or XeTeX, wouldn't it? I'm not a user of either, but I've heard good things about LuaTeX.
– Canageek
Oct 25 '11 at 21:28
add a comment |
Just to reiterate: you can get better results with fonts than embedded images, and better results with TeX-native font representations (e.g., MetaFont), than with TrueType fonts.
Noah, above, linked to typoasis, which has some mouthwateringly beautiful fonts, but they are alien to TeX, so you might not get ideal results with them.
Zapfino, Hermann Zapf's calligraphic font, is worth a look: Zapf worked with Knuth on this, and some other, fonts, so it is all done The Right Way.
If you do make use of TeX-alien fonts, it is best to import tham as MetaType1 fonts using, say, the pf2mt1 utility; cf. the CTAN metatype1 package's README for some info.
Just to reiterate: you can get better results with fonts than embedded images, and better results with TeX-native font representations (e.g., MetaFont), than with TrueType fonts.
Noah, above, linked to typoasis, which has some mouthwateringly beautiful fonts, but they are alien to TeX, so you might not get ideal results with them.
Zapfino, Hermann Zapf's calligraphic font, is worth a look: Zapf worked with Knuth on this, and some other, fonts, so it is all done The Right Way.
If you do make use of TeX-alien fonts, it is best to import tham as MetaType1 fonts using, say, the pf2mt1 utility; cf. the CTAN metatype1 package's README for some info.
edited May 23 '17 at 12:39
Community♦
1
1
answered Dec 7 '09 at 10:15
Charles StewartCharles Stewart
17.3k355110
17.3k355110
1) Couldn't you use a vector-image for nice results? I know that LaTeX doesn't support actual image formats like SVG, but you can put a vector image in a PDF then import that. 2) An alternative to non-TeX fonts would be LuaTeX or XeTeX, wouldn't it? I'm not a user of either, but I've heard good things about LuaTeX.
– Canageek
Oct 25 '11 at 21:28
add a comment |
1) Couldn't you use a vector-image for nice results? I know that LaTeX doesn't support actual image formats like SVG, but you can put a vector image in a PDF then import that. 2) An alternative to non-TeX fonts would be LuaTeX or XeTeX, wouldn't it? I'm not a user of either, but I've heard good things about LuaTeX.
– Canageek
Oct 25 '11 at 21:28
1) Couldn't you use a vector-image for nice results? I know that LaTeX doesn't support actual image formats like SVG, but you can put a vector image in a PDF then import that. 2) An alternative to non-TeX fonts would be LuaTeX or XeTeX, wouldn't it? I'm not a user of either, but I've heard good things about LuaTeX.
– Canageek
Oct 25 '11 at 21:28
1) Couldn't you use a vector-image for nice results? I know that LaTeX doesn't support actual image formats like SVG, but you can put a vector image in a PDF then import that. 2) An alternative to non-TeX fonts would be LuaTeX or XeTeX, wouldn't it? I'm not a user of either, but I've heard good things about LuaTeX.
– Canageek
Oct 25 '11 at 21:28
add a comment |
Just to chime in with a font suggestion: if you do go down that path, the fourier-orns
package loads a lot of nice ornaments that, as the name suggests, are designed to go with Fourier. See the fourier
documentation for details.
add a comment |
Just to chime in with a font suggestion: if you do go down that path, the fourier-orns
package loads a lot of nice ornaments that, as the name suggests, are designed to go with Fourier. See the fourier
documentation for details.
add a comment |
Just to chime in with a font suggestion: if you do go down that path, the fourier-orns
package loads a lot of nice ornaments that, as the name suggests, are designed to go with Fourier. See the fourier
documentation for details.
Just to chime in with a font suggestion: if you do go down that path, the fourier-orns
package loads a lot of nice ornaments that, as the name suggests, are designed to go with Fourier. See the fourier
documentation for details.
answered Oct 25 '11 at 21:53
AntAnt
5,32322634
5,32322634
add a comment |
add a comment |
I use the dingbats that come with Minion like so:
newcommandanonbreak{fancybreak{reflectbox{char"E0B6} quad char"E0BE quad char"E0B6}vspace{baselineskip}}
add a comment |
I use the dingbats that come with Minion like so:
newcommandanonbreak{fancybreak{reflectbox{char"E0B6} quad char"E0BE quad char"E0B6}vspace{baselineskip}}
add a comment |
I use the dingbats that come with Minion like so:
newcommandanonbreak{fancybreak{reflectbox{char"E0B6} quad char"E0BE quad char"E0B6}vspace{baselineskip}}
I use the dingbats that come with Minion like so:
newcommandanonbreak{fancybreak{reflectbox{char"E0B6} quad char"E0BE quad char"E0B6}vspace{baselineskip}}
answered Oct 26 '11 at 0:57
EmreEmre
4,04032629
4,04032629
add a comment |
add a comment |
You might try perusing some font collections. Here are some free examples; if you're willing to pay a little money or do some work on your own, you can get some really nice ones.
Fonts are the way to go, but the typoasis fonts are just raw foundries, and so don't integrate very well with tex. See my comment below.
– Charles Stewart
Dec 7 '09 at 9:48
2
The link is dead, making the answer completely useless. Flagging as “not an answer”.
– Henri Menke
2 hours ago
add a comment |
You might try perusing some font collections. Here are some free examples; if you're willing to pay a little money or do some work on your own, you can get some really nice ones.
Fonts are the way to go, but the typoasis fonts are just raw foundries, and so don't integrate very well with tex. See my comment below.
– Charles Stewart
Dec 7 '09 at 9:48
2
The link is dead, making the answer completely useless. Flagging as “not an answer”.
– Henri Menke
2 hours ago
add a comment |
You might try perusing some font collections. Here are some free examples; if you're willing to pay a little money or do some work on your own, you can get some really nice ones.
You might try perusing some font collections. Here are some free examples; if you're willing to pay a little money or do some work on your own, you can get some really nice ones.
edited 3 mins ago
Werner
443k679781675
443k679781675
answered Feb 7 '09 at 16:47
NoahNoah
22529
22529
Fonts are the way to go, but the typoasis fonts are just raw foundries, and so don't integrate very well with tex. See my comment below.
– Charles Stewart
Dec 7 '09 at 9:48
2
The link is dead, making the answer completely useless. Flagging as “not an answer”.
– Henri Menke
2 hours ago
add a comment |
Fonts are the way to go, but the typoasis fonts are just raw foundries, and so don't integrate very well with tex. See my comment below.
– Charles Stewart
Dec 7 '09 at 9:48
2
The link is dead, making the answer completely useless. Flagging as “not an answer”.
– Henri Menke
2 hours ago
Fonts are the way to go, but the typoasis fonts are just raw foundries, and so don't integrate very well with tex. See my comment below.
– Charles Stewart
Dec 7 '09 at 9:48
Fonts are the way to go, but the typoasis fonts are just raw foundries, and so don't integrate very well with tex. See my comment below.
– Charles Stewart
Dec 7 '09 at 9:48
2
2
The link is dead, making the answer completely useless. Flagging as “not an answer”.
– Henri Menke
2 hours ago
The link is dead, making the answer completely useless. Flagging as “not an answer”.
– Henri Menke
2 hours ago
add a comment |
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%2f32711%2ftotally-sweet-horizontal-rules-in-latex%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
9
call me old-fashioned, but is "totally sweet" the adjective you're really looking for here?
– nickf
Feb 6 '09 at 16:23
28
Old-fashioned, nick. :-P
– JMD
Feb 6 '09 at 16:26
7
It is the adjective I'm looking for. Something like ----, where the asterisks are cool leaves or something, like a big fancy curtainrod. If someone saw it, they would exclaim, "TOTALLY SWEET!"
– Arcane
Feb 6 '09 at 16:42
60
usepackage{totallysweetrules}
– quant_dev
Dec 7 '09 at 10:15
4
This question might be relevant too.
– ienissei
Mar 30 '12 at 9:09