Block quote with big quotation marksQuote style like on owni.euBlockquotes in LateXAdding an open-quote mark to the start of each line in a multiline quotation?How to create a 'fact box' or pull quote that is tied to the margins of your page?Block quote with big quotation marks and opening quote on bottomQuotes problem in beamerBlock quote with big quotations - white on blackBlock quote with big quotation marks in marginBlock quoting with big quotes on all the width of the pagea stylish footnote: brackets for a whole paragraph of textQuote style like on owni.euMacro for handling placement of last quotation mark when setting quotes in text?Encoding italian quotation marksHow to create a 'fact box' or pull quote that is tied to the margins of your page?Block quote with big quotations - white on blackBlock quote with big quotation marks and opening quote on bottomcsquotes: punctuation and quotation markscsquotes: Footnotes after Block Quotes with Quotation MarksCustomizing style of formal block quote in csquotes?Multi column block quote
Why does AES have exactly 10 rounds for a 128-bit key, 12 for 192 bits and 14 for a 256-bit key size?
When were female captains banned from Starfleet?
Does Doodling or Improvising on the Piano Have Any Benefits?
How could a planet have erratic days?
Microchip documentation does not label CAN buss pins on micro controller pinout diagram
Does an advisor owe his/her student anything? Will an advisor keep a PhD student only out of pity?
Stack Interview Code methods made from class Node and Smart Pointers
How much of a Devil Fruit must be consumed to gain the power?
How to make money from a browser who sees 5 seconds into the future of any web page?
Is this part of the description of the Archfey warlock's Misty Escape feature redundant?
What is the English pronunciation of "pain au chocolat"?
How does electrical safety system work on ISS?
Are cause and effect the same as in our Universe in a non-relativistic, Newtonian Universe in which the speed of light is infinite?
The IT department bottlenecks progress, how should I handle this?
Is there a nicer/politer/more positive alternative for "negates"?
How much theory knowledge is actually used while playing?
What's the name of the logical fallacy where a debater extends a statement far beyond the original statement to make it true?
Delete multiple columns using awk or sed
PTIJ: Why is Haman obsessed with Bose?
Giving feedback to someone without sounding prejudiced
Review your own paper in Mathematics
Biological Blimps: Propulsion
Is this toilet slogan correct usage of the English language?
What (the heck) is a Super Worm Equinox Moon?
Block quote with big quotation marks
Quote style like on owni.euBlockquotes in LateXAdding an open-quote mark to the start of each line in a multiline quotation?How to create a 'fact box' or pull quote that is tied to the margins of your page?Block quote with big quotation marks and opening quote on bottomQuotes problem in beamerBlock quote with big quotations - white on blackBlock quote with big quotation marks in marginBlock quoting with big quotes on all the width of the pagea stylish footnote: brackets for a whole paragraph of textQuote style like on owni.euMacro for handling placement of last quotation mark when setting quotes in text?Encoding italian quotation marksHow to create a 'fact box' or pull quote that is tied to the margins of your page?Block quote with big quotations - white on blackBlock quote with big quotation marks and opening quote on bottomcsquotes: punctuation and quotation markscsquotes: Footnotes after Block Quotes with Quotation MarksCustomizing style of formal block quote in csquotes?Multi column block quote
How can I create a block quote enviroment with big quotation marks similar to the Cquote Template of Wikipedia?
Additionally it would be nice to place both quotation marks and quote in a colored box and to have the author closer to the citation.
color punctuation quoting
add a comment |
How can I create a block quote enviroment with big quotation marks similar to the Cquote Template of Wikipedia?
Additionally it would be nice to place both quotation marks and quote in a colored box and to have the author closer to the citation.
color punctuation quoting
1
JFYI: See now also Block quote with big quotation marks and opening quote on bottom.
– Speravir
Feb 21 '13 at 3:32
add a comment |
How can I create a block quote enviroment with big quotation marks similar to the Cquote Template of Wikipedia?
Additionally it would be nice to place both quotation marks and quote in a colored box and to have the author closer to the citation.
color punctuation quoting
How can I create a block quote enviroment with big quotation marks similar to the Cquote Template of Wikipedia?
Additionally it would be nice to place both quotation marks and quote in a colored box and to have the author closer to the citation.
color punctuation quoting
color punctuation quoting
edited Apr 30 '11 at 11:37
lockstep
192k53593723
192k53593723
asked Apr 29 '11 at 20:00
EmersonEmerson
1,44541928
1,44541928
1
JFYI: See now also Block quote with big quotation marks and opening quote on bottom.
– Speravir
Feb 21 '13 at 3:32
add a comment |
1
JFYI: See now also Block quote with big quotation marks and opening quote on bottom.
– Speravir
Feb 21 '13 at 3:32
1
1
JFYI: See now also Block quote with big quotation marks and opening quote on bottom.
– Speravir
Feb 21 '13 at 3:32
JFYI: See now also Block quote with big quotation marks and opening quote on bottom.
– Speravir
Feb 21 '13 at 3:32
add a comment |
5 Answers
5
active
oldest
votes
Here's one solution using TikZ
which defines a new environment using the framed
package. You should preferably compile this with xelatex
or lualatex
, since it gives the easiest access to a wide range of fonts. I've added code to make it run under pdflatex
as well.
The code has now been updated to allow some flexibility in the formatting of the different components of the quotation, and the environment takes two arguments:
Environment Syntax
beginshadequote[<alignment>]<author>
text of quote
endshadequote
Code
% !TEX TS-program = xeLaTeX
documentclass[12pt]article
usepackageifxetex,ifluatex
usepackageetoolbox
usepackage[svgnames]xcolor
usepackagetikz
usepackageframed
% conditional for xetex or luatex
newififxetexorluatex
ifxetex
xetexorluatextrue
else
ifluatex
xetexorluatextrue
else
xetexorluatexfalse
fi
fi
%
ifxetexorluatex%
usepackagefontspec
usepackagelibertine % or use setmainfont to choose any font on your system
newfontfamilyquotefont[Ligatures=TeX]Linux Libertine O % selects Libertine as the quote font
else
usepackage[utf8]inputenc
usepackage[T1]fontenc
usepackagelibertine % or any other font package
newcommand*quotefontfontfamilyLinuxLibertineT-LF % selects Libertine as the quote font
fi
newcommand*quotesize60 % if quote size changes, need a way to make shifts relative
% Make commands for the quotes
newcommand*openquote
tikz[remember picture,overlay,xshift=-4ex,yshift=-2.5ex]
node (OQ) quotefontfontsizequotesizequotesizeselectfont``;kern0pt
newcommand*closequote[1]
tikz[remember picture,overlay,xshift=4ex,yshift=#1]
node (CQ) quotefontfontsizequotesizequotesizeselectfont'';
% select a colour for the shading
colorletshadecolorAzure
newcommand*shadedauthorformatemph % define format for the author argument
% Now a command to allow left, right and centre alignment of the author
newcommand*authoralign[1]%
if#1l
defauthorfilldefquotefillhfill
else
if#1r
defauthorfillhfilldefquotefill
else
if#1c
gdefauthorfillhfilldefquotefillhfill
elsetypeoutInvalid option
fi
fi
fi
% wrap everything in its own environment which takes one argument (author) and one optional argument
% specifying the alignment [l, r or c]
%
newenvironmentshadequote[2][l]%
authoralign#1
ifblank#2
defshadequoteauthordefyshift-2exdefquotefillhfill
defshadequoteauthorparauthorfillshadedauthorformat#2defyshift2ex
beginsnugshadebeginquoteopenquote
shadequoteauthorquotefillclosequoteyshiftendquoteendsnugshade
begindocument
beginshadequote[l]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote[r]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote[c]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
enddocument
In this code, the font for the quotation marks is set independently of the main document font. This is because depending on the main font you choose, the very large quotation marks will not look good; Linux Libertine has pretty quotes that seem appropriate for the purpose. If you want to use this environment with another main document font, remove/change the usepackagelibertine
.
Sample output
1
@Alun: Why do you definequotefont
? libertine is already present.
– Herbert
Apr 30 '11 at 14:32
1
@Herbert Because these are decorative elements, it makes sense to define the font for the quotes independent of the document font. For example, if you just use Computer Modern, the big quotes look quite silly; The libertine font has a pretty quote for this purpose, and I would use it with most document fonts.
– Alan Munn
Apr 30 '11 at 14:53
@Alun: You know, that I know that ... ;-) But then it makes sense to use another text font in your example, if you want to show this behaviour.
– Herbert
Apr 30 '11 at 17:32
1
@Chernoff I'm not sure why this happens, but you can adjust the value ofxshift
in theclosequote
macro to1ex
(or similar values) to adjust the positioning of the quote.
– Alan Munn
Jun 30 '18 at 16:02
1
@Chernoff Again, not sure the reason, but you can addvspace1ex
(or similar value) before theemph
in theshadedauthorformat
definition.
– Alan Munn
Jun 30 '18 at 16:41
|
show 16 more comments
(We just got another question asking for something similar: Quote style like on owni.eu. I wasn't aware of this question when I started to answer that one, but on becoming aware of it decided to post my answer here instead.)
It's also TikZ-based but slightly different to Alan's as the whole thing ends up in a TikZ node. This does mean that it won't work with page-breaking. One could also adapt the quote marks from Alan's version to make them look a bit better.
Here's the result:
And here's the code:
documentclassarticle
thispagestyleempty
usepackagelipsum
usepackagetikz
usetikzlibrarybackgrounds
makeatletter
tikzset%
fancy quotes/.style=
text width=fq@width pt,
align=justify,
inner sep=1em,
anchor=north west,
minimum width=linewidth,
,
fancy quotes width/.initial=.8linewidth,
fancy quotes marks/.style=
scale=8,
text=white,
inner sep=0pt,
,
fancy quotes opening/.style=
fancy quotes marks,
,
fancy quotes closing/.style=
fancy quotes marks,
,
fancy quotes background/.style=
show background rectangle,
inner frame xsep=0pt,
background rectangle/.style=
fill=gray!25,
rounded corners,
,
newenvironmentfancyquotes[1][]%
noindent
tikzpicture[fancy quotes background]
node[fancy quotes opening,anchor=north west] (fq@ul) at (0,0) ``;
tikz@scan@one@pointpgfutil@firstofone(fq@ul.east)
pgfmathsetmacrofq@widthlinewidth - 2*pgf@x
node[fancy quotes,#1] (fq@txt) at (fq@ul.north west) bgroup
egroup;
node[overlay,fancy quotes closing,anchor=east] at (fq@txt.south east) '';
endtikzpicture
makeatother
begindocument
lipsum[1]
beginfancyquotes
lipsum[1]
endfancyquotes
lipsum[1]
enddocument
The lipsum
package is just to provide some dummy text.
I like this one a lot and have started to use it in my documents. Thanks!
– adl
Jan 26 '12 at 16:46
This looks seriously good in documents. Thanks!
– tchakravarty
Jul 25 '12 at 6:53
Just had a request on TeXwelt.de to have the box in twocolumn mode taking up just one column. Basically,s/textwidth/columnwidth/g
. Can you add a line explaining and maybe another screenshot?
– Johannes_B
Feb 13 '15 at 16:44
@Johannes_B Feel free to edit the answer with that change. As this is over three years old, I don't feel able to resurrect it myself.
– Loop Space
Feb 14 '15 at 19:34
1
@Johannes_B @LoopSpace This is great! This creates no spacing between paragraphs within the block quote, however. How can I modify it so that there is normal spacing between paragraphs within the fancyquotes environment? I tried addingsetlengthbaselineskip16pt
andsetlengthparskipbaselineskip
but neither one worked.
– incandescentman
Dec 21 '16 at 5:31
add a comment |
documentclass[12pt]article
usepackage[T1]fontenc
usepackagelibertine
usepackagegraphicx
usepackage[svgnames]xcolor
usepackageframed
newcommand*openquotemakebox(25,-22)scalebox5``
newcommand*closequotemakebox(25,-22)scalebox5''
colorletshadecolorAzure
makeatletter
newifif@right
defshadequote@righttrueshadequote@i
defshadequote@ibeginsnugshadebeginquoteopenquote
defendshadequote%
if@righthfillficlosequoteendquoteendsnugshade
@namedefshadequote*@rightfalseshadequote@i
@namedefendshadequote*endshadequote
makeatother
begindocument
beginshadequote
Some quoted words
endshadequote
beginshadequote*
Some quoted words
endshadequote*
beginshadequote
A common mistake that people make when trying to design something completely
foolproof is to underestimate the ingenuity of complete fools.paremphDouglas Adams
endshadequote
enddocument
Using your code in a minimal example works great, but when I copy it to a large document I work on I get the error "You can't use 'spacefactor' in vertical mode". Do you have any idea how to resolve this problem? Thanks!
– lumbric
Mar 21 '12 at 22:39
you'd forgotten themakeatletter
...makeatother
– Herbert
Mar 22 '12 at 11:09
Thanks a lot! It took me quite a while to figure out what happend, but you were right, I messed up themakeatletter
andmakeatother
commands. This happend after exporting some code from LyX, at this step LyX put some additionalmakeatletter
andmakeatother
around my custom code.
– lumbric
Mar 26 '12 at 21:22
If there is a line break before the closing quote, it looks a bit strange. I don't have a real good suggestion, but I think placing simple anolinebreak
makes things a bit better. This means one would have to replace the lineif@righthfillficlosequoteendquoteendsnugshade}
bynolinebreakif@righthfillficlosequoteendquoteendsnugshade}
. This is a comment and not an edit, because I'm unsure if it's the best solution.
– lumbric
Mar 28 '12 at 20:28
I'm trying to use this in my thesis which is based onclassicthesis
but the problem is, it mess with all my fonts and change them. What am I doing wrong here? The same holds for @Herbert 's answer.
– Pouya
Sep 25 '13 at 15:31
add a comment |
Had I known about this question, I would not have written cfr-dquote
. However, I didn't, so I did. Here's a lightly modified version of my package for public consumption or rejection.
The package defines a command, dquote[<dimension>]<long text><short text
which is intended to be used so that <dimension>
is the width desired, <long text>
is the quotation and <short text>
is the attribution.
The package is based on TikZ and the appearance can be customised using the usual key-value interface. For example, I've never used this with a coloured background to the quotation, but that is easy to achieve by simply altering quote style
.
For example,
documentclass[a4paper,british]article
usepackage[utf8]inputenc
usepackagegeometry,babel,csquotes
usepackagecfr-lm
usepackagecfr-dquote
MakeAutoQuote‘’
MakeAutoQuote*“”
begindocument
tikzset%
dquote text font=fontfamilyLobsterTwo-LFselectfontLargeupshape,
dquote attrib font=fontfamilyLobsterTwo-LFselectfontHugeitshape,
dquote=
quote style/.style=align=justify, fill=blue!50!cyan, fill opacity=.2, text opacity=1, text=blue!15!darkgray,
marks=
size=Huge,
scale=4,
color=blue!50!darkgray,
opacity=.5,
,
,
%
dquote%
‘Come, we shall have some fun now!’ thought Alice. ‘I'm glad they've begun asking riddles --- I believe I can guess that,’ she added aloud.
‘Do you mean that you think you can find out the answer to it?’ said the March Hare.
‘Exactly so,’ said Alice.
‘Then you should say what you mean,’ the March Hare went on.
‘I do,’ Alice hastily replied; ‘at least --- at least I mean what I say --- that's the same thing, you know.’
‘Not the same thing a bit!’ said the Hatter. ‘Why, you might just as well say that ‘I see what I eat’ is the same thing as ‘I eat what I see’!’
‘You might just as well say,’ added the March Hare, ‘that ‘I like what I get’ is the same thing as ‘I get what I like’!’
‘You might just as well say,’ added the Dormouse, which seemed to be talking in its sleep, ‘that ‘I breathe when I sleep’ is the same thing as ‘I sleep when I breathe’!’
Lewis Carroll
enddocument
produces the following output
The package consists of two files, cfr-dquote.sty
and cfr-dquote.tex
. In theory, the latter can be compiled alone, since it uses the standalone
class, but don't be tempted to use it this way - that's just to make tweaks and debugging easier.
Complete code:
beginfilecontentscfr-dquote.sty
% !TEX encoding = UTF-8 Unicode
% cfr-dquote.sty
NeedsTeXFormatLaTeX2e% LaTeX 2.09 can't be used (nor non-LaTeX)
[1994/12/01]% LaTeX date must December 1994 or later
RequirePackagesvn-prov
ProvidesPackageSVN$Id: cfr-dquote.sty 7799 2018-07-20 01:52:15Z cfr $
RequirePackagexcolor,pifont,standalone,xparse,tikz
usetikzlibrarycalc,positioning,backgrounds
IfFileExiststikzlibrarypicfix.code.texusetikzlibrarypicfix
IfFileExiststikzlibrarycfrexternal.code.texusetikzlibrarycfrexternalusetikzlibraryexternal
NewDocumentCommanddquotetextfonthooknormalfontlarge
NewDocumentCommanddquoteattribfonthooknormalfontnormalsize
AtBeginDocument%
newlengthcfrdquoteparskipsetlengthcfrdquoteparskipparskip%
newlengthcfrdquoteparindentsetlengthcfrdquoteparindentparindent
% BEGIN defaults
tikzset%
dquote text font/.code=%
RenewDocumentCommanddquotetextfonthook#1
,
dquote attrib font/.code=%
RenewDocumentCommanddquoteattribfonthook#1
,
dquote/.code=%
tikzset%
/cfr-dquote/.cd,
#1
,
/cfr-dquote/quote style/.style=align=justify, color=blue!50!black,
/cfr-dquote/quote/.style=/cfr-dquote/quote style, font=dquotetextfonthook,
/cfr-dquote/attrib/.style=/cfr-dquote/quote style, font=dquoteattribfonthook,
/cfr-dquote/quote mark/.style=color=cfrdquotecolor, opacity=cfrdquoteopacity, font=cfrdquotesize, scale=cfrdquotescale,
/cfr-dquote/.cd,
width/.store in=cfrdquotewidth,
text/.store in=cfrdquotetext,
attribution/.store in=cfrdquoteattrib,
width=120mm,
text=Does dim o gwbl yn y fan hon!,
attribution=Neb,
marks/.code=%
tikzset%
/cfr-dquote/quote marks/.cd,
#1
,
quote marks/size/.store in=cfrdquotesize,
quote marks/scale/.store in=cfrdquotescale,
quote marks/color/.store in=cfrdquotecolor,
quote marks/opacity/.store in=cfrdquoteopacity,
marks=
size=Huge,
scale=4,
color=blue!50!cyan,
opacity=.25,
,
% END defaults
% BEGIN defn dquote
NewDocumentCommanddquote O 120mm +m m %
tikzset%
external/export next=false,
/cfr-dquote/.cd,
width=#1,
text=setlengthparskipcfrdquoteparskipsetlengthparindentcfrdquoteparindent#2,
attribution=#3
%
inputcfr-dquote%
% END defn dquote
endinput
endfilecontents
beginfilecontentscfr-dquote.tex
% !TEX TS-program = pdflatex
% !TEX encoding = UTF-8 Unicode
% arara: pdflatex: synctex: true
%BEGIN preamble
csname standaloneignoreendcsname
pdfminorversion=7
PassOptionsToPackagergbxcolor
RequirePackagesvn-prov
ProvidesFileSVN$Id: cfr-dquote.tex 7800 2018-07-20 01:58:28Z cfr $
documentclass[tikz,12pt]standalone
usetikzlibrarycalc,positioning,backgrounds
usepackagepifont,biblatex
% END preamble
begindocument%
begintikzpicture[node distance=0pt]
node (quotation) [/cfr-dquote/quote, text width=cfrdquotewidth] cfrdquotetext;
node (attrib) [/cfr-dquote/attrib, below=of quotation, text width=cfrdquotewidth] cfrdquoteattrib;
node (qlhs) [left=of quotation.north west, /cfr-dquote/quote mark, xshift=.25em, yshift=.25em, anchor=north east] ding123;
node (qrhs) [right=of quotation.south east, /cfr-dquote/quote mark, xshift=-.25em, yshift=-.75em, anchor=south west] ding124;
pgfresetboundingbox
useasboundingbox (attrib.south -| qlhs.west) rectangle (quotation.north -| qrhs.east);
endtikzpicture%
enddocument
endfilecontents
documentclass[a4paper,british]article
usepackage[utf8]inputenc
usepackagegeometry,babel,csquotes
usepackagecfr-lm
usepackagecfr-dquote
MakeAutoQuote‘’
MakeAutoQuote*“”
begindocument
tikzset%
dquote text font=fontfamilyLobsterTwo-LFselectfontLargeupshape,
dquote attrib font=fontfamilyLobsterTwo-LFselectfontHugeitshape,
dquote=
quote style/.style=align=justify, fill=blue!50!cyan, fill opacity=.2, text opacity=1, text=blue!15!darkgray,
marks=
size=Huge,
scale=4,
color=blue!50!darkgray,
opacity=.5,
,
,
%
dquote%
‘Come, we shall have some fun now!’ thought Alice. ‘I'm glad they've begun asking riddles --- I believe I can guess that,’ she added aloud.
‘Do you mean that you think you can find out the answer to it?’ said the March Hare.
‘Exactly so,’ said Alice.
‘Then you should say what you mean,’ the March Hare went on.
‘I do,’ Alice hastily replied; ‘at least --- at least I mean what I say --- that's the same thing, you know.’
‘Not the same thing a bit!’ said the Hatter. ‘Why, you might just as well say that ‘I see what I eat’ is the same thing as ‘I eat what I see’!’
‘You might just as well say,’ added the March Hare, ‘that ‘I like what I get’ is the same thing as ‘I get what I like’!’
‘You might just as well say,’ added the Dormouse, which seemed to be talking in its sleep, ‘that ‘I breathe when I sleep’ is the same thing as ‘I sleep when I breathe’!’
Lewis Carroll
enddocument
add a comment |
I know that this is old, but I may as well share my simple attempt.
Note: requires usepackagexcolor
newcommandquotebox[1]begincenterfcolorboxwhiteblue!15!gray!15beginminipage0.9linewidthvspace10ptcenterbeginminipage0.8linewidthspaceHuge``#1hspace1.5embreaknullHugehfill''endminipagesmallbreakendminipageendcenter
Example:
New contributor
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');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
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%2f16964%2fblock-quote-with-big-quotation-marks%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
5 Answers
5
active
oldest
votes
5 Answers
5
active
oldest
votes
active
oldest
votes
active
oldest
votes
Here's one solution using TikZ
which defines a new environment using the framed
package. You should preferably compile this with xelatex
or lualatex
, since it gives the easiest access to a wide range of fonts. I've added code to make it run under pdflatex
as well.
The code has now been updated to allow some flexibility in the formatting of the different components of the quotation, and the environment takes two arguments:
Environment Syntax
beginshadequote[<alignment>]<author>
text of quote
endshadequote
Code
% !TEX TS-program = xeLaTeX
documentclass[12pt]article
usepackageifxetex,ifluatex
usepackageetoolbox
usepackage[svgnames]xcolor
usepackagetikz
usepackageframed
% conditional for xetex or luatex
newififxetexorluatex
ifxetex
xetexorluatextrue
else
ifluatex
xetexorluatextrue
else
xetexorluatexfalse
fi
fi
%
ifxetexorluatex%
usepackagefontspec
usepackagelibertine % or use setmainfont to choose any font on your system
newfontfamilyquotefont[Ligatures=TeX]Linux Libertine O % selects Libertine as the quote font
else
usepackage[utf8]inputenc
usepackage[T1]fontenc
usepackagelibertine % or any other font package
newcommand*quotefontfontfamilyLinuxLibertineT-LF % selects Libertine as the quote font
fi
newcommand*quotesize60 % if quote size changes, need a way to make shifts relative
% Make commands for the quotes
newcommand*openquote
tikz[remember picture,overlay,xshift=-4ex,yshift=-2.5ex]
node (OQ) quotefontfontsizequotesizequotesizeselectfont``;kern0pt
newcommand*closequote[1]
tikz[remember picture,overlay,xshift=4ex,yshift=#1]
node (CQ) quotefontfontsizequotesizequotesizeselectfont'';
% select a colour for the shading
colorletshadecolorAzure
newcommand*shadedauthorformatemph % define format for the author argument
% Now a command to allow left, right and centre alignment of the author
newcommand*authoralign[1]%
if#1l
defauthorfilldefquotefillhfill
else
if#1r
defauthorfillhfilldefquotefill
else
if#1c
gdefauthorfillhfilldefquotefillhfill
elsetypeoutInvalid option
fi
fi
fi
% wrap everything in its own environment which takes one argument (author) and one optional argument
% specifying the alignment [l, r or c]
%
newenvironmentshadequote[2][l]%
authoralign#1
ifblank#2
defshadequoteauthordefyshift-2exdefquotefillhfill
defshadequoteauthorparauthorfillshadedauthorformat#2defyshift2ex
beginsnugshadebeginquoteopenquote
shadequoteauthorquotefillclosequoteyshiftendquoteendsnugshade
begindocument
beginshadequote[l]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote[r]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote[c]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
enddocument
In this code, the font for the quotation marks is set independently of the main document font. This is because depending on the main font you choose, the very large quotation marks will not look good; Linux Libertine has pretty quotes that seem appropriate for the purpose. If you want to use this environment with another main document font, remove/change the usepackagelibertine
.
Sample output
1
@Alun: Why do you definequotefont
? libertine is already present.
– Herbert
Apr 30 '11 at 14:32
1
@Herbert Because these are decorative elements, it makes sense to define the font for the quotes independent of the document font. For example, if you just use Computer Modern, the big quotes look quite silly; The libertine font has a pretty quote for this purpose, and I would use it with most document fonts.
– Alan Munn
Apr 30 '11 at 14:53
@Alun: You know, that I know that ... ;-) But then it makes sense to use another text font in your example, if you want to show this behaviour.
– Herbert
Apr 30 '11 at 17:32
1
@Chernoff I'm not sure why this happens, but you can adjust the value ofxshift
in theclosequote
macro to1ex
(or similar values) to adjust the positioning of the quote.
– Alan Munn
Jun 30 '18 at 16:02
1
@Chernoff Again, not sure the reason, but you can addvspace1ex
(or similar value) before theemph
in theshadedauthorformat
definition.
– Alan Munn
Jun 30 '18 at 16:41
|
show 16 more comments
Here's one solution using TikZ
which defines a new environment using the framed
package. You should preferably compile this with xelatex
or lualatex
, since it gives the easiest access to a wide range of fonts. I've added code to make it run under pdflatex
as well.
The code has now been updated to allow some flexibility in the formatting of the different components of the quotation, and the environment takes two arguments:
Environment Syntax
beginshadequote[<alignment>]<author>
text of quote
endshadequote
Code
% !TEX TS-program = xeLaTeX
documentclass[12pt]article
usepackageifxetex,ifluatex
usepackageetoolbox
usepackage[svgnames]xcolor
usepackagetikz
usepackageframed
% conditional for xetex or luatex
newififxetexorluatex
ifxetex
xetexorluatextrue
else
ifluatex
xetexorluatextrue
else
xetexorluatexfalse
fi
fi
%
ifxetexorluatex%
usepackagefontspec
usepackagelibertine % or use setmainfont to choose any font on your system
newfontfamilyquotefont[Ligatures=TeX]Linux Libertine O % selects Libertine as the quote font
else
usepackage[utf8]inputenc
usepackage[T1]fontenc
usepackagelibertine % or any other font package
newcommand*quotefontfontfamilyLinuxLibertineT-LF % selects Libertine as the quote font
fi
newcommand*quotesize60 % if quote size changes, need a way to make shifts relative
% Make commands for the quotes
newcommand*openquote
tikz[remember picture,overlay,xshift=-4ex,yshift=-2.5ex]
node (OQ) quotefontfontsizequotesizequotesizeselectfont``;kern0pt
newcommand*closequote[1]
tikz[remember picture,overlay,xshift=4ex,yshift=#1]
node (CQ) quotefontfontsizequotesizequotesizeselectfont'';
% select a colour for the shading
colorletshadecolorAzure
newcommand*shadedauthorformatemph % define format for the author argument
% Now a command to allow left, right and centre alignment of the author
newcommand*authoralign[1]%
if#1l
defauthorfilldefquotefillhfill
else
if#1r
defauthorfillhfilldefquotefill
else
if#1c
gdefauthorfillhfilldefquotefillhfill
elsetypeoutInvalid option
fi
fi
fi
% wrap everything in its own environment which takes one argument (author) and one optional argument
% specifying the alignment [l, r or c]
%
newenvironmentshadequote[2][l]%
authoralign#1
ifblank#2
defshadequoteauthordefyshift-2exdefquotefillhfill
defshadequoteauthorparauthorfillshadedauthorformat#2defyshift2ex
beginsnugshadebeginquoteopenquote
shadequoteauthorquotefillclosequoteyshiftendquoteendsnugshade
begindocument
beginshadequote[l]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote[r]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote[c]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
enddocument
In this code, the font for the quotation marks is set independently of the main document font. This is because depending on the main font you choose, the very large quotation marks will not look good; Linux Libertine has pretty quotes that seem appropriate for the purpose. If you want to use this environment with another main document font, remove/change the usepackagelibertine
.
Sample output
1
@Alun: Why do you definequotefont
? libertine is already present.
– Herbert
Apr 30 '11 at 14:32
1
@Herbert Because these are decorative elements, it makes sense to define the font for the quotes independent of the document font. For example, if you just use Computer Modern, the big quotes look quite silly; The libertine font has a pretty quote for this purpose, and I would use it with most document fonts.
– Alan Munn
Apr 30 '11 at 14:53
@Alun: You know, that I know that ... ;-) But then it makes sense to use another text font in your example, if you want to show this behaviour.
– Herbert
Apr 30 '11 at 17:32
1
@Chernoff I'm not sure why this happens, but you can adjust the value ofxshift
in theclosequote
macro to1ex
(or similar values) to adjust the positioning of the quote.
– Alan Munn
Jun 30 '18 at 16:02
1
@Chernoff Again, not sure the reason, but you can addvspace1ex
(or similar value) before theemph
in theshadedauthorformat
definition.
– Alan Munn
Jun 30 '18 at 16:41
|
show 16 more comments
Here's one solution using TikZ
which defines a new environment using the framed
package. You should preferably compile this with xelatex
or lualatex
, since it gives the easiest access to a wide range of fonts. I've added code to make it run under pdflatex
as well.
The code has now been updated to allow some flexibility in the formatting of the different components of the quotation, and the environment takes two arguments:
Environment Syntax
beginshadequote[<alignment>]<author>
text of quote
endshadequote
Code
% !TEX TS-program = xeLaTeX
documentclass[12pt]article
usepackageifxetex,ifluatex
usepackageetoolbox
usepackage[svgnames]xcolor
usepackagetikz
usepackageframed
% conditional for xetex or luatex
newififxetexorluatex
ifxetex
xetexorluatextrue
else
ifluatex
xetexorluatextrue
else
xetexorluatexfalse
fi
fi
%
ifxetexorluatex%
usepackagefontspec
usepackagelibertine % or use setmainfont to choose any font on your system
newfontfamilyquotefont[Ligatures=TeX]Linux Libertine O % selects Libertine as the quote font
else
usepackage[utf8]inputenc
usepackage[T1]fontenc
usepackagelibertine % or any other font package
newcommand*quotefontfontfamilyLinuxLibertineT-LF % selects Libertine as the quote font
fi
newcommand*quotesize60 % if quote size changes, need a way to make shifts relative
% Make commands for the quotes
newcommand*openquote
tikz[remember picture,overlay,xshift=-4ex,yshift=-2.5ex]
node (OQ) quotefontfontsizequotesizequotesizeselectfont``;kern0pt
newcommand*closequote[1]
tikz[remember picture,overlay,xshift=4ex,yshift=#1]
node (CQ) quotefontfontsizequotesizequotesizeselectfont'';
% select a colour for the shading
colorletshadecolorAzure
newcommand*shadedauthorformatemph % define format for the author argument
% Now a command to allow left, right and centre alignment of the author
newcommand*authoralign[1]%
if#1l
defauthorfilldefquotefillhfill
else
if#1r
defauthorfillhfilldefquotefill
else
if#1c
gdefauthorfillhfilldefquotefillhfill
elsetypeoutInvalid option
fi
fi
fi
% wrap everything in its own environment which takes one argument (author) and one optional argument
% specifying the alignment [l, r or c]
%
newenvironmentshadequote[2][l]%
authoralign#1
ifblank#2
defshadequoteauthordefyshift-2exdefquotefillhfill
defshadequoteauthorparauthorfillshadedauthorformat#2defyshift2ex
beginsnugshadebeginquoteopenquote
shadequoteauthorquotefillclosequoteyshiftendquoteendsnugshade
begindocument
beginshadequote[l]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote[r]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote[c]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
enddocument
In this code, the font for the quotation marks is set independently of the main document font. This is because depending on the main font you choose, the very large quotation marks will not look good; Linux Libertine has pretty quotes that seem appropriate for the purpose. If you want to use this environment with another main document font, remove/change the usepackagelibertine
.
Sample output
Here's one solution using TikZ
which defines a new environment using the framed
package. You should preferably compile this with xelatex
or lualatex
, since it gives the easiest access to a wide range of fonts. I've added code to make it run under pdflatex
as well.
The code has now been updated to allow some flexibility in the formatting of the different components of the quotation, and the environment takes two arguments:
Environment Syntax
beginshadequote[<alignment>]<author>
text of quote
endshadequote
Code
% !TEX TS-program = xeLaTeX
documentclass[12pt]article
usepackageifxetex,ifluatex
usepackageetoolbox
usepackage[svgnames]xcolor
usepackagetikz
usepackageframed
% conditional for xetex or luatex
newififxetexorluatex
ifxetex
xetexorluatextrue
else
ifluatex
xetexorluatextrue
else
xetexorluatexfalse
fi
fi
%
ifxetexorluatex%
usepackagefontspec
usepackagelibertine % or use setmainfont to choose any font on your system
newfontfamilyquotefont[Ligatures=TeX]Linux Libertine O % selects Libertine as the quote font
else
usepackage[utf8]inputenc
usepackage[T1]fontenc
usepackagelibertine % or any other font package
newcommand*quotefontfontfamilyLinuxLibertineT-LF % selects Libertine as the quote font
fi
newcommand*quotesize60 % if quote size changes, need a way to make shifts relative
% Make commands for the quotes
newcommand*openquote
tikz[remember picture,overlay,xshift=-4ex,yshift=-2.5ex]
node (OQ) quotefontfontsizequotesizequotesizeselectfont``;kern0pt
newcommand*closequote[1]
tikz[remember picture,overlay,xshift=4ex,yshift=#1]
node (CQ) quotefontfontsizequotesizequotesizeselectfont'';
% select a colour for the shading
colorletshadecolorAzure
newcommand*shadedauthorformatemph % define format for the author argument
% Now a command to allow left, right and centre alignment of the author
newcommand*authoralign[1]%
if#1l
defauthorfilldefquotefillhfill
else
if#1r
defauthorfillhfilldefquotefill
else
if#1c
gdefauthorfillhfilldefquotefillhfill
elsetypeoutInvalid option
fi
fi
fi
% wrap everything in its own environment which takes one argument (author) and one optional argument
% specifying the alignment [l, r or c]
%
newenvironmentshadequote[2][l]%
authoralign#1
ifblank#2
defshadequoteauthordefyshift-2exdefquotefillhfill
defshadequoteauthorparauthorfillshadedauthorformat#2defyshift2ex
beginsnugshadebeginquoteopenquote
shadequoteauthorquotefillclosequoteyshiftendquoteendsnugshade
begindocument
beginshadequote[l]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote[r]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote[c]Douglas Adams
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
beginshadequote
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
endshadequote
enddocument
In this code, the font for the quotation marks is set independently of the main document font. This is because depending on the main font you choose, the very large quotation marks will not look good; Linux Libertine has pretty quotes that seem appropriate for the purpose. If you want to use this environment with another main document font, remove/change the usepackagelibertine
.
Sample output
edited May 2 '13 at 4:44
answered Apr 30 '11 at 0:36
Alan MunnAlan Munn
163k28432711
163k28432711
1
@Alun: Why do you definequotefont
? libertine is already present.
– Herbert
Apr 30 '11 at 14:32
1
@Herbert Because these are decorative elements, it makes sense to define the font for the quotes independent of the document font. For example, if you just use Computer Modern, the big quotes look quite silly; The libertine font has a pretty quote for this purpose, and I would use it with most document fonts.
– Alan Munn
Apr 30 '11 at 14:53
@Alun: You know, that I know that ... ;-) But then it makes sense to use another text font in your example, if you want to show this behaviour.
– Herbert
Apr 30 '11 at 17:32
1
@Chernoff I'm not sure why this happens, but you can adjust the value ofxshift
in theclosequote
macro to1ex
(or similar values) to adjust the positioning of the quote.
– Alan Munn
Jun 30 '18 at 16:02
1
@Chernoff Again, not sure the reason, but you can addvspace1ex
(or similar value) before theemph
in theshadedauthorformat
definition.
– Alan Munn
Jun 30 '18 at 16:41
|
show 16 more comments
1
@Alun: Why do you definequotefont
? libertine is already present.
– Herbert
Apr 30 '11 at 14:32
1
@Herbert Because these are decorative elements, it makes sense to define the font for the quotes independent of the document font. For example, if you just use Computer Modern, the big quotes look quite silly; The libertine font has a pretty quote for this purpose, and I would use it with most document fonts.
– Alan Munn
Apr 30 '11 at 14:53
@Alun: You know, that I know that ... ;-) But then it makes sense to use another text font in your example, if you want to show this behaviour.
– Herbert
Apr 30 '11 at 17:32
1
@Chernoff I'm not sure why this happens, but you can adjust the value ofxshift
in theclosequote
macro to1ex
(or similar values) to adjust the positioning of the quote.
– Alan Munn
Jun 30 '18 at 16:02
1
@Chernoff Again, not sure the reason, but you can addvspace1ex
(or similar value) before theemph
in theshadedauthorformat
definition.
– Alan Munn
Jun 30 '18 at 16:41
1
1
@Alun: Why do you define
quotefont
? libertine is already present.– Herbert
Apr 30 '11 at 14:32
@Alun: Why do you define
quotefont
? libertine is already present.– Herbert
Apr 30 '11 at 14:32
1
1
@Herbert Because these are decorative elements, it makes sense to define the font for the quotes independent of the document font. For example, if you just use Computer Modern, the big quotes look quite silly; The libertine font has a pretty quote for this purpose, and I would use it with most document fonts.
– Alan Munn
Apr 30 '11 at 14:53
@Herbert Because these are decorative elements, it makes sense to define the font for the quotes independent of the document font. For example, if you just use Computer Modern, the big quotes look quite silly; The libertine font has a pretty quote for this purpose, and I would use it with most document fonts.
– Alan Munn
Apr 30 '11 at 14:53
@Alun: You know, that I know that ... ;-) But then it makes sense to use another text font in your example, if you want to show this behaviour.
– Herbert
Apr 30 '11 at 17:32
@Alun: You know, that I know that ... ;-) But then it makes sense to use another text font in your example, if you want to show this behaviour.
– Herbert
Apr 30 '11 at 17:32
1
1
@Chernoff I'm not sure why this happens, but you can adjust the value of
xshift
in the closequote
macro to 1ex
(or similar values) to adjust the positioning of the quote.– Alan Munn
Jun 30 '18 at 16:02
@Chernoff I'm not sure why this happens, but you can adjust the value of
xshift
in the closequote
macro to 1ex
(or similar values) to adjust the positioning of the quote.– Alan Munn
Jun 30 '18 at 16:02
1
1
@Chernoff Again, not sure the reason, but you can add
vspace1ex
(or similar value) before the emph
in the shadedauthorformat
definition.– Alan Munn
Jun 30 '18 at 16:41
@Chernoff Again, not sure the reason, but you can add
vspace1ex
(or similar value) before the emph
in the shadedauthorformat
definition.– Alan Munn
Jun 30 '18 at 16:41
|
show 16 more comments
(We just got another question asking for something similar: Quote style like on owni.eu. I wasn't aware of this question when I started to answer that one, but on becoming aware of it decided to post my answer here instead.)
It's also TikZ-based but slightly different to Alan's as the whole thing ends up in a TikZ node. This does mean that it won't work with page-breaking. One could also adapt the quote marks from Alan's version to make them look a bit better.
Here's the result:
And here's the code:
documentclassarticle
thispagestyleempty
usepackagelipsum
usepackagetikz
usetikzlibrarybackgrounds
makeatletter
tikzset%
fancy quotes/.style=
text width=fq@width pt,
align=justify,
inner sep=1em,
anchor=north west,
minimum width=linewidth,
,
fancy quotes width/.initial=.8linewidth,
fancy quotes marks/.style=
scale=8,
text=white,
inner sep=0pt,
,
fancy quotes opening/.style=
fancy quotes marks,
,
fancy quotes closing/.style=
fancy quotes marks,
,
fancy quotes background/.style=
show background rectangle,
inner frame xsep=0pt,
background rectangle/.style=
fill=gray!25,
rounded corners,
,
newenvironmentfancyquotes[1][]%
noindent
tikzpicture[fancy quotes background]
node[fancy quotes opening,anchor=north west] (fq@ul) at (0,0) ``;
tikz@scan@one@pointpgfutil@firstofone(fq@ul.east)
pgfmathsetmacrofq@widthlinewidth - 2*pgf@x
node[fancy quotes,#1] (fq@txt) at (fq@ul.north west) bgroup
egroup;
node[overlay,fancy quotes closing,anchor=east] at (fq@txt.south east) '';
endtikzpicture
makeatother
begindocument
lipsum[1]
beginfancyquotes
lipsum[1]
endfancyquotes
lipsum[1]
enddocument
The lipsum
package is just to provide some dummy text.
I like this one a lot and have started to use it in my documents. Thanks!
– adl
Jan 26 '12 at 16:46
This looks seriously good in documents. Thanks!
– tchakravarty
Jul 25 '12 at 6:53
Just had a request on TeXwelt.de to have the box in twocolumn mode taking up just one column. Basically,s/textwidth/columnwidth/g
. Can you add a line explaining and maybe another screenshot?
– Johannes_B
Feb 13 '15 at 16:44
@Johannes_B Feel free to edit the answer with that change. As this is over three years old, I don't feel able to resurrect it myself.
– Loop Space
Feb 14 '15 at 19:34
1
@Johannes_B @LoopSpace This is great! This creates no spacing between paragraphs within the block quote, however. How can I modify it so that there is normal spacing between paragraphs within the fancyquotes environment? I tried addingsetlengthbaselineskip16pt
andsetlengthparskipbaselineskip
but neither one worked.
– incandescentman
Dec 21 '16 at 5:31
add a comment |
(We just got another question asking for something similar: Quote style like on owni.eu. I wasn't aware of this question when I started to answer that one, but on becoming aware of it decided to post my answer here instead.)
It's also TikZ-based but slightly different to Alan's as the whole thing ends up in a TikZ node. This does mean that it won't work with page-breaking. One could also adapt the quote marks from Alan's version to make them look a bit better.
Here's the result:
And here's the code:
documentclassarticle
thispagestyleempty
usepackagelipsum
usepackagetikz
usetikzlibrarybackgrounds
makeatletter
tikzset%
fancy quotes/.style=
text width=fq@width pt,
align=justify,
inner sep=1em,
anchor=north west,
minimum width=linewidth,
,
fancy quotes width/.initial=.8linewidth,
fancy quotes marks/.style=
scale=8,
text=white,
inner sep=0pt,
,
fancy quotes opening/.style=
fancy quotes marks,
,
fancy quotes closing/.style=
fancy quotes marks,
,
fancy quotes background/.style=
show background rectangle,
inner frame xsep=0pt,
background rectangle/.style=
fill=gray!25,
rounded corners,
,
newenvironmentfancyquotes[1][]%
noindent
tikzpicture[fancy quotes background]
node[fancy quotes opening,anchor=north west] (fq@ul) at (0,0) ``;
tikz@scan@one@pointpgfutil@firstofone(fq@ul.east)
pgfmathsetmacrofq@widthlinewidth - 2*pgf@x
node[fancy quotes,#1] (fq@txt) at (fq@ul.north west) bgroup
egroup;
node[overlay,fancy quotes closing,anchor=east] at (fq@txt.south east) '';
endtikzpicture
makeatother
begindocument
lipsum[1]
beginfancyquotes
lipsum[1]
endfancyquotes
lipsum[1]
enddocument
The lipsum
package is just to provide some dummy text.
I like this one a lot and have started to use it in my documents. Thanks!
– adl
Jan 26 '12 at 16:46
This looks seriously good in documents. Thanks!
– tchakravarty
Jul 25 '12 at 6:53
Just had a request on TeXwelt.de to have the box in twocolumn mode taking up just one column. Basically,s/textwidth/columnwidth/g
. Can you add a line explaining and maybe another screenshot?
– Johannes_B
Feb 13 '15 at 16:44
@Johannes_B Feel free to edit the answer with that change. As this is over three years old, I don't feel able to resurrect it myself.
– Loop Space
Feb 14 '15 at 19:34
1
@Johannes_B @LoopSpace This is great! This creates no spacing between paragraphs within the block quote, however. How can I modify it so that there is normal spacing between paragraphs within the fancyquotes environment? I tried addingsetlengthbaselineskip16pt
andsetlengthparskipbaselineskip
but neither one worked.
– incandescentman
Dec 21 '16 at 5:31
add a comment |
(We just got another question asking for something similar: Quote style like on owni.eu. I wasn't aware of this question when I started to answer that one, but on becoming aware of it decided to post my answer here instead.)
It's also TikZ-based but slightly different to Alan's as the whole thing ends up in a TikZ node. This does mean that it won't work with page-breaking. One could also adapt the quote marks from Alan's version to make them look a bit better.
Here's the result:
And here's the code:
documentclassarticle
thispagestyleempty
usepackagelipsum
usepackagetikz
usetikzlibrarybackgrounds
makeatletter
tikzset%
fancy quotes/.style=
text width=fq@width pt,
align=justify,
inner sep=1em,
anchor=north west,
minimum width=linewidth,
,
fancy quotes width/.initial=.8linewidth,
fancy quotes marks/.style=
scale=8,
text=white,
inner sep=0pt,
,
fancy quotes opening/.style=
fancy quotes marks,
,
fancy quotes closing/.style=
fancy quotes marks,
,
fancy quotes background/.style=
show background rectangle,
inner frame xsep=0pt,
background rectangle/.style=
fill=gray!25,
rounded corners,
,
newenvironmentfancyquotes[1][]%
noindent
tikzpicture[fancy quotes background]
node[fancy quotes opening,anchor=north west] (fq@ul) at (0,0) ``;
tikz@scan@one@pointpgfutil@firstofone(fq@ul.east)
pgfmathsetmacrofq@widthlinewidth - 2*pgf@x
node[fancy quotes,#1] (fq@txt) at (fq@ul.north west) bgroup
egroup;
node[overlay,fancy quotes closing,anchor=east] at (fq@txt.south east) '';
endtikzpicture
makeatother
begindocument
lipsum[1]
beginfancyquotes
lipsum[1]
endfancyquotes
lipsum[1]
enddocument
The lipsum
package is just to provide some dummy text.
(We just got another question asking for something similar: Quote style like on owni.eu. I wasn't aware of this question when I started to answer that one, but on becoming aware of it decided to post my answer here instead.)
It's also TikZ-based but slightly different to Alan's as the whole thing ends up in a TikZ node. This does mean that it won't work with page-breaking. One could also adapt the quote marks from Alan's version to make them look a bit better.
Here's the result:
And here's the code:
documentclassarticle
thispagestyleempty
usepackagelipsum
usepackagetikz
usetikzlibrarybackgrounds
makeatletter
tikzset%
fancy quotes/.style=
text width=fq@width pt,
align=justify,
inner sep=1em,
anchor=north west,
minimum width=linewidth,
,
fancy quotes width/.initial=.8linewidth,
fancy quotes marks/.style=
scale=8,
text=white,
inner sep=0pt,
,
fancy quotes opening/.style=
fancy quotes marks,
,
fancy quotes closing/.style=
fancy quotes marks,
,
fancy quotes background/.style=
show background rectangle,
inner frame xsep=0pt,
background rectangle/.style=
fill=gray!25,
rounded corners,
,
newenvironmentfancyquotes[1][]%
noindent
tikzpicture[fancy quotes background]
node[fancy quotes opening,anchor=north west] (fq@ul) at (0,0) ``;
tikz@scan@one@pointpgfutil@firstofone(fq@ul.east)
pgfmathsetmacrofq@widthlinewidth - 2*pgf@x
node[fancy quotes,#1] (fq@txt) at (fq@ul.north west) bgroup
egroup;
node[overlay,fancy quotes closing,anchor=east] at (fq@txt.south east) '';
endtikzpicture
makeatother
begindocument
lipsum[1]
beginfancyquotes
lipsum[1]
endfancyquotes
lipsum[1]
enddocument
The lipsum
package is just to provide some dummy text.
edited Apr 13 '17 at 12:35
Community♦
1
1
answered Sep 14 '11 at 11:27
Loop SpaceLoop Space
113k29306609
113k29306609
I like this one a lot and have started to use it in my documents. Thanks!
– adl
Jan 26 '12 at 16:46
This looks seriously good in documents. Thanks!
– tchakravarty
Jul 25 '12 at 6:53
Just had a request on TeXwelt.de to have the box in twocolumn mode taking up just one column. Basically,s/textwidth/columnwidth/g
. Can you add a line explaining and maybe another screenshot?
– Johannes_B
Feb 13 '15 at 16:44
@Johannes_B Feel free to edit the answer with that change. As this is over three years old, I don't feel able to resurrect it myself.
– Loop Space
Feb 14 '15 at 19:34
1
@Johannes_B @LoopSpace This is great! This creates no spacing between paragraphs within the block quote, however. How can I modify it so that there is normal spacing between paragraphs within the fancyquotes environment? I tried addingsetlengthbaselineskip16pt
andsetlengthparskipbaselineskip
but neither one worked.
– incandescentman
Dec 21 '16 at 5:31
add a comment |
I like this one a lot and have started to use it in my documents. Thanks!
– adl
Jan 26 '12 at 16:46
This looks seriously good in documents. Thanks!
– tchakravarty
Jul 25 '12 at 6:53
Just had a request on TeXwelt.de to have the box in twocolumn mode taking up just one column. Basically,s/textwidth/columnwidth/g
. Can you add a line explaining and maybe another screenshot?
– Johannes_B
Feb 13 '15 at 16:44
@Johannes_B Feel free to edit the answer with that change. As this is over three years old, I don't feel able to resurrect it myself.
– Loop Space
Feb 14 '15 at 19:34
1
@Johannes_B @LoopSpace This is great! This creates no spacing between paragraphs within the block quote, however. How can I modify it so that there is normal spacing between paragraphs within the fancyquotes environment? I tried addingsetlengthbaselineskip16pt
andsetlengthparskipbaselineskip
but neither one worked.
– incandescentman
Dec 21 '16 at 5:31
I like this one a lot and have started to use it in my documents. Thanks!
– adl
Jan 26 '12 at 16:46
I like this one a lot and have started to use it in my documents. Thanks!
– adl
Jan 26 '12 at 16:46
This looks seriously good in documents. Thanks!
– tchakravarty
Jul 25 '12 at 6:53
This looks seriously good in documents. Thanks!
– tchakravarty
Jul 25 '12 at 6:53
Just had a request on TeXwelt.de to have the box in twocolumn mode taking up just one column. Basically,
s/textwidth/columnwidth/g
. Can you add a line explaining and maybe another screenshot?– Johannes_B
Feb 13 '15 at 16:44
Just had a request on TeXwelt.de to have the box in twocolumn mode taking up just one column. Basically,
s/textwidth/columnwidth/g
. Can you add a line explaining and maybe another screenshot?– Johannes_B
Feb 13 '15 at 16:44
@Johannes_B Feel free to edit the answer with that change. As this is over three years old, I don't feel able to resurrect it myself.
– Loop Space
Feb 14 '15 at 19:34
@Johannes_B Feel free to edit the answer with that change. As this is over three years old, I don't feel able to resurrect it myself.
– Loop Space
Feb 14 '15 at 19:34
1
1
@Johannes_B @LoopSpace This is great! This creates no spacing between paragraphs within the block quote, however. How can I modify it so that there is normal spacing between paragraphs within the fancyquotes environment? I tried adding
setlengthbaselineskip16pt
and setlengthparskipbaselineskip
but neither one worked.– incandescentman
Dec 21 '16 at 5:31
@Johannes_B @LoopSpace This is great! This creates no spacing between paragraphs within the block quote, however. How can I modify it so that there is normal spacing between paragraphs within the fancyquotes environment? I tried adding
setlengthbaselineskip16pt
and setlengthparskipbaselineskip
but neither one worked.– incandescentman
Dec 21 '16 at 5:31
add a comment |
documentclass[12pt]article
usepackage[T1]fontenc
usepackagelibertine
usepackagegraphicx
usepackage[svgnames]xcolor
usepackageframed
newcommand*openquotemakebox(25,-22)scalebox5``
newcommand*closequotemakebox(25,-22)scalebox5''
colorletshadecolorAzure
makeatletter
newifif@right
defshadequote@righttrueshadequote@i
defshadequote@ibeginsnugshadebeginquoteopenquote
defendshadequote%
if@righthfillficlosequoteendquoteendsnugshade
@namedefshadequote*@rightfalseshadequote@i
@namedefendshadequote*endshadequote
makeatother
begindocument
beginshadequote
Some quoted words
endshadequote
beginshadequote*
Some quoted words
endshadequote*
beginshadequote
A common mistake that people make when trying to design something completely
foolproof is to underestimate the ingenuity of complete fools.paremphDouglas Adams
endshadequote
enddocument
Using your code in a minimal example works great, but when I copy it to a large document I work on I get the error "You can't use 'spacefactor' in vertical mode". Do you have any idea how to resolve this problem? Thanks!
– lumbric
Mar 21 '12 at 22:39
you'd forgotten themakeatletter
...makeatother
– Herbert
Mar 22 '12 at 11:09
Thanks a lot! It took me quite a while to figure out what happend, but you were right, I messed up themakeatletter
andmakeatother
commands. This happend after exporting some code from LyX, at this step LyX put some additionalmakeatletter
andmakeatother
around my custom code.
– lumbric
Mar 26 '12 at 21:22
If there is a line break before the closing quote, it looks a bit strange. I don't have a real good suggestion, but I think placing simple anolinebreak
makes things a bit better. This means one would have to replace the lineif@righthfillficlosequoteendquoteendsnugshade}
bynolinebreakif@righthfillficlosequoteendquoteendsnugshade}
. This is a comment and not an edit, because I'm unsure if it's the best solution.
– lumbric
Mar 28 '12 at 20:28
I'm trying to use this in my thesis which is based onclassicthesis
but the problem is, it mess with all my fonts and change them. What am I doing wrong here? The same holds for @Herbert 's answer.
– Pouya
Sep 25 '13 at 15:31
add a comment |
documentclass[12pt]article
usepackage[T1]fontenc
usepackagelibertine
usepackagegraphicx
usepackage[svgnames]xcolor
usepackageframed
newcommand*openquotemakebox(25,-22)scalebox5``
newcommand*closequotemakebox(25,-22)scalebox5''
colorletshadecolorAzure
makeatletter
newifif@right
defshadequote@righttrueshadequote@i
defshadequote@ibeginsnugshadebeginquoteopenquote
defendshadequote%
if@righthfillficlosequoteendquoteendsnugshade
@namedefshadequote*@rightfalseshadequote@i
@namedefendshadequote*endshadequote
makeatother
begindocument
beginshadequote
Some quoted words
endshadequote
beginshadequote*
Some quoted words
endshadequote*
beginshadequote
A common mistake that people make when trying to design something completely
foolproof is to underestimate the ingenuity of complete fools.paremphDouglas Adams
endshadequote
enddocument
Using your code in a minimal example works great, but when I copy it to a large document I work on I get the error "You can't use 'spacefactor' in vertical mode". Do you have any idea how to resolve this problem? Thanks!
– lumbric
Mar 21 '12 at 22:39
you'd forgotten themakeatletter
...makeatother
– Herbert
Mar 22 '12 at 11:09
Thanks a lot! It took me quite a while to figure out what happend, but you were right, I messed up themakeatletter
andmakeatother
commands. This happend after exporting some code from LyX, at this step LyX put some additionalmakeatletter
andmakeatother
around my custom code.
– lumbric
Mar 26 '12 at 21:22
If there is a line break before the closing quote, it looks a bit strange. I don't have a real good suggestion, but I think placing simple anolinebreak
makes things a bit better. This means one would have to replace the lineif@righthfillficlosequoteendquoteendsnugshade}
bynolinebreakif@righthfillficlosequoteendquoteendsnugshade}
. This is a comment and not an edit, because I'm unsure if it's the best solution.
– lumbric
Mar 28 '12 at 20:28
I'm trying to use this in my thesis which is based onclassicthesis
but the problem is, it mess with all my fonts and change them. What am I doing wrong here? The same holds for @Herbert 's answer.
– Pouya
Sep 25 '13 at 15:31
add a comment |
documentclass[12pt]article
usepackage[T1]fontenc
usepackagelibertine
usepackagegraphicx
usepackage[svgnames]xcolor
usepackageframed
newcommand*openquotemakebox(25,-22)scalebox5``
newcommand*closequotemakebox(25,-22)scalebox5''
colorletshadecolorAzure
makeatletter
newifif@right
defshadequote@righttrueshadequote@i
defshadequote@ibeginsnugshadebeginquoteopenquote
defendshadequote%
if@righthfillficlosequoteendquoteendsnugshade
@namedefshadequote*@rightfalseshadequote@i
@namedefendshadequote*endshadequote
makeatother
begindocument
beginshadequote
Some quoted words
endshadequote
beginshadequote*
Some quoted words
endshadequote*
beginshadequote
A common mistake that people make when trying to design something completely
foolproof is to underestimate the ingenuity of complete fools.paremphDouglas Adams
endshadequote
enddocument
documentclass[12pt]article
usepackage[T1]fontenc
usepackagelibertine
usepackagegraphicx
usepackage[svgnames]xcolor
usepackageframed
newcommand*openquotemakebox(25,-22)scalebox5``
newcommand*closequotemakebox(25,-22)scalebox5''
colorletshadecolorAzure
makeatletter
newifif@right
defshadequote@righttrueshadequote@i
defshadequote@ibeginsnugshadebeginquoteopenquote
defendshadequote%
if@righthfillficlosequoteendquoteendsnugshade
@namedefshadequote*@rightfalseshadequote@i
@namedefendshadequote*endshadequote
makeatother
begindocument
beginshadequote
Some quoted words
endshadequote
beginshadequote*
Some quoted words
endshadequote*
beginshadequote
A common mistake that people make when trying to design something completely
foolproof is to underestimate the ingenuity of complete fools.paremphDouglas Adams
endshadequote
enddocument
answered Apr 30 '11 at 6:01
HerbertHerbert
276k25419732
276k25419732
Using your code in a minimal example works great, but when I copy it to a large document I work on I get the error "You can't use 'spacefactor' in vertical mode". Do you have any idea how to resolve this problem? Thanks!
– lumbric
Mar 21 '12 at 22:39
you'd forgotten themakeatletter
...makeatother
– Herbert
Mar 22 '12 at 11:09
Thanks a lot! It took me quite a while to figure out what happend, but you were right, I messed up themakeatletter
andmakeatother
commands. This happend after exporting some code from LyX, at this step LyX put some additionalmakeatletter
andmakeatother
around my custom code.
– lumbric
Mar 26 '12 at 21:22
If there is a line break before the closing quote, it looks a bit strange. I don't have a real good suggestion, but I think placing simple anolinebreak
makes things a bit better. This means one would have to replace the lineif@righthfillficlosequoteendquoteendsnugshade}
bynolinebreakif@righthfillficlosequoteendquoteendsnugshade}
. This is a comment and not an edit, because I'm unsure if it's the best solution.
– lumbric
Mar 28 '12 at 20:28
I'm trying to use this in my thesis which is based onclassicthesis
but the problem is, it mess with all my fonts and change them. What am I doing wrong here? The same holds for @Herbert 's answer.
– Pouya
Sep 25 '13 at 15:31
add a comment |
Using your code in a minimal example works great, but when I copy it to a large document I work on I get the error "You can't use 'spacefactor' in vertical mode". Do you have any idea how to resolve this problem? Thanks!
– lumbric
Mar 21 '12 at 22:39
you'd forgotten themakeatletter
...makeatother
– Herbert
Mar 22 '12 at 11:09
Thanks a lot! It took me quite a while to figure out what happend, but you were right, I messed up themakeatletter
andmakeatother
commands. This happend after exporting some code from LyX, at this step LyX put some additionalmakeatletter
andmakeatother
around my custom code.
– lumbric
Mar 26 '12 at 21:22
If there is a line break before the closing quote, it looks a bit strange. I don't have a real good suggestion, but I think placing simple anolinebreak
makes things a bit better. This means one would have to replace the lineif@righthfillficlosequoteendquoteendsnugshade}
bynolinebreakif@righthfillficlosequoteendquoteendsnugshade}
. This is a comment and not an edit, because I'm unsure if it's the best solution.
– lumbric
Mar 28 '12 at 20:28
I'm trying to use this in my thesis which is based onclassicthesis
but the problem is, it mess with all my fonts and change them. What am I doing wrong here? The same holds for @Herbert 's answer.
– Pouya
Sep 25 '13 at 15:31
Using your code in a minimal example works great, but when I copy it to a large document I work on I get the error "You can't use 'spacefactor' in vertical mode". Do you have any idea how to resolve this problem? Thanks!
– lumbric
Mar 21 '12 at 22:39
Using your code in a minimal example works great, but when I copy it to a large document I work on I get the error "You can't use 'spacefactor' in vertical mode". Do you have any idea how to resolve this problem? Thanks!
– lumbric
Mar 21 '12 at 22:39
you'd forgotten the
makeatletter
... makeatother
– Herbert
Mar 22 '12 at 11:09
you'd forgotten the
makeatletter
... makeatother
– Herbert
Mar 22 '12 at 11:09
Thanks a lot! It took me quite a while to figure out what happend, but you were right, I messed up the
makeatletter
and makeatother
commands. This happend after exporting some code from LyX, at this step LyX put some additional makeatletter
and makeatother
around my custom code.– lumbric
Mar 26 '12 at 21:22
Thanks a lot! It took me quite a while to figure out what happend, but you were right, I messed up the
makeatletter
and makeatother
commands. This happend after exporting some code from LyX, at this step LyX put some additional makeatletter
and makeatother
around my custom code.– lumbric
Mar 26 '12 at 21:22
If there is a line break before the closing quote, it looks a bit strange. I don't have a real good suggestion, but I think placing simple a
nolinebreak
makes things a bit better. This means one would have to replace the line if@righthfillficlosequoteendquoteendsnugshade}
by nolinebreakif@righthfillficlosequoteendquoteendsnugshade}
. This is a comment and not an edit, because I'm unsure if it's the best solution.– lumbric
Mar 28 '12 at 20:28
If there is a line break before the closing quote, it looks a bit strange. I don't have a real good suggestion, but I think placing simple a
nolinebreak
makes things a bit better. This means one would have to replace the line if@righthfillficlosequoteendquoteendsnugshade}
by nolinebreakif@righthfillficlosequoteendquoteendsnugshade}
. This is a comment and not an edit, because I'm unsure if it's the best solution.– lumbric
Mar 28 '12 at 20:28
I'm trying to use this in my thesis which is based on
classicthesis
but the problem is, it mess with all my fonts and change them. What am I doing wrong here? The same holds for @Herbert 's answer.– Pouya
Sep 25 '13 at 15:31
I'm trying to use this in my thesis which is based on
classicthesis
but the problem is, it mess with all my fonts and change them. What am I doing wrong here? The same holds for @Herbert 's answer.– Pouya
Sep 25 '13 at 15:31
add a comment |
Had I known about this question, I would not have written cfr-dquote
. However, I didn't, so I did. Here's a lightly modified version of my package for public consumption or rejection.
The package defines a command, dquote[<dimension>]<long text><short text
which is intended to be used so that <dimension>
is the width desired, <long text>
is the quotation and <short text>
is the attribution.
The package is based on TikZ and the appearance can be customised using the usual key-value interface. For example, I've never used this with a coloured background to the quotation, but that is easy to achieve by simply altering quote style
.
For example,
documentclass[a4paper,british]article
usepackage[utf8]inputenc
usepackagegeometry,babel,csquotes
usepackagecfr-lm
usepackagecfr-dquote
MakeAutoQuote‘’
MakeAutoQuote*“”
begindocument
tikzset%
dquote text font=fontfamilyLobsterTwo-LFselectfontLargeupshape,
dquote attrib font=fontfamilyLobsterTwo-LFselectfontHugeitshape,
dquote=
quote style/.style=align=justify, fill=blue!50!cyan, fill opacity=.2, text opacity=1, text=blue!15!darkgray,
marks=
size=Huge,
scale=4,
color=blue!50!darkgray,
opacity=.5,
,
,
%
dquote%
‘Come, we shall have some fun now!’ thought Alice. ‘I'm glad they've begun asking riddles --- I believe I can guess that,’ she added aloud.
‘Do you mean that you think you can find out the answer to it?’ said the March Hare.
‘Exactly so,’ said Alice.
‘Then you should say what you mean,’ the March Hare went on.
‘I do,’ Alice hastily replied; ‘at least --- at least I mean what I say --- that's the same thing, you know.’
‘Not the same thing a bit!’ said the Hatter. ‘Why, you might just as well say that ‘I see what I eat’ is the same thing as ‘I eat what I see’!’
‘You might just as well say,’ added the March Hare, ‘that ‘I like what I get’ is the same thing as ‘I get what I like’!’
‘You might just as well say,’ added the Dormouse, which seemed to be talking in its sleep, ‘that ‘I breathe when I sleep’ is the same thing as ‘I sleep when I breathe’!’
Lewis Carroll
enddocument
produces the following output
The package consists of two files, cfr-dquote.sty
and cfr-dquote.tex
. In theory, the latter can be compiled alone, since it uses the standalone
class, but don't be tempted to use it this way - that's just to make tweaks and debugging easier.
Complete code:
beginfilecontentscfr-dquote.sty
% !TEX encoding = UTF-8 Unicode
% cfr-dquote.sty
NeedsTeXFormatLaTeX2e% LaTeX 2.09 can't be used (nor non-LaTeX)
[1994/12/01]% LaTeX date must December 1994 or later
RequirePackagesvn-prov
ProvidesPackageSVN$Id: cfr-dquote.sty 7799 2018-07-20 01:52:15Z cfr $
RequirePackagexcolor,pifont,standalone,xparse,tikz
usetikzlibrarycalc,positioning,backgrounds
IfFileExiststikzlibrarypicfix.code.texusetikzlibrarypicfix
IfFileExiststikzlibrarycfrexternal.code.texusetikzlibrarycfrexternalusetikzlibraryexternal
NewDocumentCommanddquotetextfonthooknormalfontlarge
NewDocumentCommanddquoteattribfonthooknormalfontnormalsize
AtBeginDocument%
newlengthcfrdquoteparskipsetlengthcfrdquoteparskipparskip%
newlengthcfrdquoteparindentsetlengthcfrdquoteparindentparindent
% BEGIN defaults
tikzset%
dquote text font/.code=%
RenewDocumentCommanddquotetextfonthook#1
,
dquote attrib font/.code=%
RenewDocumentCommanddquoteattribfonthook#1
,
dquote/.code=%
tikzset%
/cfr-dquote/.cd,
#1
,
/cfr-dquote/quote style/.style=align=justify, color=blue!50!black,
/cfr-dquote/quote/.style=/cfr-dquote/quote style, font=dquotetextfonthook,
/cfr-dquote/attrib/.style=/cfr-dquote/quote style, font=dquoteattribfonthook,
/cfr-dquote/quote mark/.style=color=cfrdquotecolor, opacity=cfrdquoteopacity, font=cfrdquotesize, scale=cfrdquotescale,
/cfr-dquote/.cd,
width/.store in=cfrdquotewidth,
text/.store in=cfrdquotetext,
attribution/.store in=cfrdquoteattrib,
width=120mm,
text=Does dim o gwbl yn y fan hon!,
attribution=Neb,
marks/.code=%
tikzset%
/cfr-dquote/quote marks/.cd,
#1
,
quote marks/size/.store in=cfrdquotesize,
quote marks/scale/.store in=cfrdquotescale,
quote marks/color/.store in=cfrdquotecolor,
quote marks/opacity/.store in=cfrdquoteopacity,
marks=
size=Huge,
scale=4,
color=blue!50!cyan,
opacity=.25,
,
% END defaults
% BEGIN defn dquote
NewDocumentCommanddquote O 120mm +m m %
tikzset%
external/export next=false,
/cfr-dquote/.cd,
width=#1,
text=setlengthparskipcfrdquoteparskipsetlengthparindentcfrdquoteparindent#2,
attribution=#3
%
inputcfr-dquote%
% END defn dquote
endinput
endfilecontents
beginfilecontentscfr-dquote.tex
% !TEX TS-program = pdflatex
% !TEX encoding = UTF-8 Unicode
% arara: pdflatex: synctex: true
%BEGIN preamble
csname standaloneignoreendcsname
pdfminorversion=7
PassOptionsToPackagergbxcolor
RequirePackagesvn-prov
ProvidesFileSVN$Id: cfr-dquote.tex 7800 2018-07-20 01:58:28Z cfr $
documentclass[tikz,12pt]standalone
usetikzlibrarycalc,positioning,backgrounds
usepackagepifont,biblatex
% END preamble
begindocument%
begintikzpicture[node distance=0pt]
node (quotation) [/cfr-dquote/quote, text width=cfrdquotewidth] cfrdquotetext;
node (attrib) [/cfr-dquote/attrib, below=of quotation, text width=cfrdquotewidth] cfrdquoteattrib;
node (qlhs) [left=of quotation.north west, /cfr-dquote/quote mark, xshift=.25em, yshift=.25em, anchor=north east] ding123;
node (qrhs) [right=of quotation.south east, /cfr-dquote/quote mark, xshift=-.25em, yshift=-.75em, anchor=south west] ding124;
pgfresetboundingbox
useasboundingbox (attrib.south -| qlhs.west) rectangle (quotation.north -| qrhs.east);
endtikzpicture%
enddocument
endfilecontents
documentclass[a4paper,british]article
usepackage[utf8]inputenc
usepackagegeometry,babel,csquotes
usepackagecfr-lm
usepackagecfr-dquote
MakeAutoQuote‘’
MakeAutoQuote*“”
begindocument
tikzset%
dquote text font=fontfamilyLobsterTwo-LFselectfontLargeupshape,
dquote attrib font=fontfamilyLobsterTwo-LFselectfontHugeitshape,
dquote=
quote style/.style=align=justify, fill=blue!50!cyan, fill opacity=.2, text opacity=1, text=blue!15!darkgray,
marks=
size=Huge,
scale=4,
color=blue!50!darkgray,
opacity=.5,
,
,
%
dquote%
‘Come, we shall have some fun now!’ thought Alice. ‘I'm glad they've begun asking riddles --- I believe I can guess that,’ she added aloud.
‘Do you mean that you think you can find out the answer to it?’ said the March Hare.
‘Exactly so,’ said Alice.
‘Then you should say what you mean,’ the March Hare went on.
‘I do,’ Alice hastily replied; ‘at least --- at least I mean what I say --- that's the same thing, you know.’
‘Not the same thing a bit!’ said the Hatter. ‘Why, you might just as well say that ‘I see what I eat’ is the same thing as ‘I eat what I see’!’
‘You might just as well say,’ added the March Hare, ‘that ‘I like what I get’ is the same thing as ‘I get what I like’!’
‘You might just as well say,’ added the Dormouse, which seemed to be talking in its sleep, ‘that ‘I breathe when I sleep’ is the same thing as ‘I sleep when I breathe’!’
Lewis Carroll
enddocument
add a comment |
Had I known about this question, I would not have written cfr-dquote
. However, I didn't, so I did. Here's a lightly modified version of my package for public consumption or rejection.
The package defines a command, dquote[<dimension>]<long text><short text
which is intended to be used so that <dimension>
is the width desired, <long text>
is the quotation and <short text>
is the attribution.
The package is based on TikZ and the appearance can be customised using the usual key-value interface. For example, I've never used this with a coloured background to the quotation, but that is easy to achieve by simply altering quote style
.
For example,
documentclass[a4paper,british]article
usepackage[utf8]inputenc
usepackagegeometry,babel,csquotes
usepackagecfr-lm
usepackagecfr-dquote
MakeAutoQuote‘’
MakeAutoQuote*“”
begindocument
tikzset%
dquote text font=fontfamilyLobsterTwo-LFselectfontLargeupshape,
dquote attrib font=fontfamilyLobsterTwo-LFselectfontHugeitshape,
dquote=
quote style/.style=align=justify, fill=blue!50!cyan, fill opacity=.2, text opacity=1, text=blue!15!darkgray,
marks=
size=Huge,
scale=4,
color=blue!50!darkgray,
opacity=.5,
,
,
%
dquote%
‘Come, we shall have some fun now!’ thought Alice. ‘I'm glad they've begun asking riddles --- I believe I can guess that,’ she added aloud.
‘Do you mean that you think you can find out the answer to it?’ said the March Hare.
‘Exactly so,’ said Alice.
‘Then you should say what you mean,’ the March Hare went on.
‘I do,’ Alice hastily replied; ‘at least --- at least I mean what I say --- that's the same thing, you know.’
‘Not the same thing a bit!’ said the Hatter. ‘Why, you might just as well say that ‘I see what I eat’ is the same thing as ‘I eat what I see’!’
‘You might just as well say,’ added the March Hare, ‘that ‘I like what I get’ is the same thing as ‘I get what I like’!’
‘You might just as well say,’ added the Dormouse, which seemed to be talking in its sleep, ‘that ‘I breathe when I sleep’ is the same thing as ‘I sleep when I breathe’!’
Lewis Carroll
enddocument
produces the following output
The package consists of two files, cfr-dquote.sty
and cfr-dquote.tex
. In theory, the latter can be compiled alone, since it uses the standalone
class, but don't be tempted to use it this way - that's just to make tweaks and debugging easier.
Complete code:
beginfilecontentscfr-dquote.sty
% !TEX encoding = UTF-8 Unicode
% cfr-dquote.sty
NeedsTeXFormatLaTeX2e% LaTeX 2.09 can't be used (nor non-LaTeX)
[1994/12/01]% LaTeX date must December 1994 or later
RequirePackagesvn-prov
ProvidesPackageSVN$Id: cfr-dquote.sty 7799 2018-07-20 01:52:15Z cfr $
RequirePackagexcolor,pifont,standalone,xparse,tikz
usetikzlibrarycalc,positioning,backgrounds
IfFileExiststikzlibrarypicfix.code.texusetikzlibrarypicfix
IfFileExiststikzlibrarycfrexternal.code.texusetikzlibrarycfrexternalusetikzlibraryexternal
NewDocumentCommanddquotetextfonthooknormalfontlarge
NewDocumentCommanddquoteattribfonthooknormalfontnormalsize
AtBeginDocument%
newlengthcfrdquoteparskipsetlengthcfrdquoteparskipparskip%
newlengthcfrdquoteparindentsetlengthcfrdquoteparindentparindent
% BEGIN defaults
tikzset%
dquote text font/.code=%
RenewDocumentCommanddquotetextfonthook#1
,
dquote attrib font/.code=%
RenewDocumentCommanddquoteattribfonthook#1
,
dquote/.code=%
tikzset%
/cfr-dquote/.cd,
#1
,
/cfr-dquote/quote style/.style=align=justify, color=blue!50!black,
/cfr-dquote/quote/.style=/cfr-dquote/quote style, font=dquotetextfonthook,
/cfr-dquote/attrib/.style=/cfr-dquote/quote style, font=dquoteattribfonthook,
/cfr-dquote/quote mark/.style=color=cfrdquotecolor, opacity=cfrdquoteopacity, font=cfrdquotesize, scale=cfrdquotescale,
/cfr-dquote/.cd,
width/.store in=cfrdquotewidth,
text/.store in=cfrdquotetext,
attribution/.store in=cfrdquoteattrib,
width=120mm,
text=Does dim o gwbl yn y fan hon!,
attribution=Neb,
marks/.code=%
tikzset%
/cfr-dquote/quote marks/.cd,
#1
,
quote marks/size/.store in=cfrdquotesize,
quote marks/scale/.store in=cfrdquotescale,
quote marks/color/.store in=cfrdquotecolor,
quote marks/opacity/.store in=cfrdquoteopacity,
marks=
size=Huge,
scale=4,
color=blue!50!cyan,
opacity=.25,
,
% END defaults
% BEGIN defn dquote
NewDocumentCommanddquote O 120mm +m m %
tikzset%
external/export next=false,
/cfr-dquote/.cd,
width=#1,
text=setlengthparskipcfrdquoteparskipsetlengthparindentcfrdquoteparindent#2,
attribution=#3
%
inputcfr-dquote%
% END defn dquote
endinput
endfilecontents
beginfilecontentscfr-dquote.tex
% !TEX TS-program = pdflatex
% !TEX encoding = UTF-8 Unicode
% arara: pdflatex: synctex: true
%BEGIN preamble
csname standaloneignoreendcsname
pdfminorversion=7
PassOptionsToPackagergbxcolor
RequirePackagesvn-prov
ProvidesFileSVN$Id: cfr-dquote.tex 7800 2018-07-20 01:58:28Z cfr $
documentclass[tikz,12pt]standalone
usetikzlibrarycalc,positioning,backgrounds
usepackagepifont,biblatex
% END preamble
begindocument%
begintikzpicture[node distance=0pt]
node (quotation) [/cfr-dquote/quote, text width=cfrdquotewidth] cfrdquotetext;
node (attrib) [/cfr-dquote/attrib, below=of quotation, text width=cfrdquotewidth] cfrdquoteattrib;
node (qlhs) [left=of quotation.north west, /cfr-dquote/quote mark, xshift=.25em, yshift=.25em, anchor=north east] ding123;
node (qrhs) [right=of quotation.south east, /cfr-dquote/quote mark, xshift=-.25em, yshift=-.75em, anchor=south west] ding124;
pgfresetboundingbox
useasboundingbox (attrib.south -| qlhs.west) rectangle (quotation.north -| qrhs.east);
endtikzpicture%
enddocument
endfilecontents
documentclass[a4paper,british]article
usepackage[utf8]inputenc
usepackagegeometry,babel,csquotes
usepackagecfr-lm
usepackagecfr-dquote
MakeAutoQuote‘’
MakeAutoQuote*“”
begindocument
tikzset%
dquote text font=fontfamilyLobsterTwo-LFselectfontLargeupshape,
dquote attrib font=fontfamilyLobsterTwo-LFselectfontHugeitshape,
dquote=
quote style/.style=align=justify, fill=blue!50!cyan, fill opacity=.2, text opacity=1, text=blue!15!darkgray,
marks=
size=Huge,
scale=4,
color=blue!50!darkgray,
opacity=.5,
,
,
%
dquote%
‘Come, we shall have some fun now!’ thought Alice. ‘I'm glad they've begun asking riddles --- I believe I can guess that,’ she added aloud.
‘Do you mean that you think you can find out the answer to it?’ said the March Hare.
‘Exactly so,’ said Alice.
‘Then you should say what you mean,’ the March Hare went on.
‘I do,’ Alice hastily replied; ‘at least --- at least I mean what I say --- that's the same thing, you know.’
‘Not the same thing a bit!’ said the Hatter. ‘Why, you might just as well say that ‘I see what I eat’ is the same thing as ‘I eat what I see’!’
‘You might just as well say,’ added the March Hare, ‘that ‘I like what I get’ is the same thing as ‘I get what I like’!’
‘You might just as well say,’ added the Dormouse, which seemed to be talking in its sleep, ‘that ‘I breathe when I sleep’ is the same thing as ‘I sleep when I breathe’!’
Lewis Carroll
enddocument
add a comment |
Had I known about this question, I would not have written cfr-dquote
. However, I didn't, so I did. Here's a lightly modified version of my package for public consumption or rejection.
The package defines a command, dquote[<dimension>]<long text><short text
which is intended to be used so that <dimension>
is the width desired, <long text>
is the quotation and <short text>
is the attribution.
The package is based on TikZ and the appearance can be customised using the usual key-value interface. For example, I've never used this with a coloured background to the quotation, but that is easy to achieve by simply altering quote style
.
For example,
documentclass[a4paper,british]article
usepackage[utf8]inputenc
usepackagegeometry,babel,csquotes
usepackagecfr-lm
usepackagecfr-dquote
MakeAutoQuote‘’
MakeAutoQuote*“”
begindocument
tikzset%
dquote text font=fontfamilyLobsterTwo-LFselectfontLargeupshape,
dquote attrib font=fontfamilyLobsterTwo-LFselectfontHugeitshape,
dquote=
quote style/.style=align=justify, fill=blue!50!cyan, fill opacity=.2, text opacity=1, text=blue!15!darkgray,
marks=
size=Huge,
scale=4,
color=blue!50!darkgray,
opacity=.5,
,
,
%
dquote%
‘Come, we shall have some fun now!’ thought Alice. ‘I'm glad they've begun asking riddles --- I believe I can guess that,’ she added aloud.
‘Do you mean that you think you can find out the answer to it?’ said the March Hare.
‘Exactly so,’ said Alice.
‘Then you should say what you mean,’ the March Hare went on.
‘I do,’ Alice hastily replied; ‘at least --- at least I mean what I say --- that's the same thing, you know.’
‘Not the same thing a bit!’ said the Hatter. ‘Why, you might just as well say that ‘I see what I eat’ is the same thing as ‘I eat what I see’!’
‘You might just as well say,’ added the March Hare, ‘that ‘I like what I get’ is the same thing as ‘I get what I like’!’
‘You might just as well say,’ added the Dormouse, which seemed to be talking in its sleep, ‘that ‘I breathe when I sleep’ is the same thing as ‘I sleep when I breathe’!’
Lewis Carroll
enddocument
produces the following output
The package consists of two files, cfr-dquote.sty
and cfr-dquote.tex
. In theory, the latter can be compiled alone, since it uses the standalone
class, but don't be tempted to use it this way - that's just to make tweaks and debugging easier.
Complete code:
beginfilecontentscfr-dquote.sty
% !TEX encoding = UTF-8 Unicode
% cfr-dquote.sty
NeedsTeXFormatLaTeX2e% LaTeX 2.09 can't be used (nor non-LaTeX)
[1994/12/01]% LaTeX date must December 1994 or later
RequirePackagesvn-prov
ProvidesPackageSVN$Id: cfr-dquote.sty 7799 2018-07-20 01:52:15Z cfr $
RequirePackagexcolor,pifont,standalone,xparse,tikz
usetikzlibrarycalc,positioning,backgrounds
IfFileExiststikzlibrarypicfix.code.texusetikzlibrarypicfix
IfFileExiststikzlibrarycfrexternal.code.texusetikzlibrarycfrexternalusetikzlibraryexternal
NewDocumentCommanddquotetextfonthooknormalfontlarge
NewDocumentCommanddquoteattribfonthooknormalfontnormalsize
AtBeginDocument%
newlengthcfrdquoteparskipsetlengthcfrdquoteparskipparskip%
newlengthcfrdquoteparindentsetlengthcfrdquoteparindentparindent
% BEGIN defaults
tikzset%
dquote text font/.code=%
RenewDocumentCommanddquotetextfonthook#1
,
dquote attrib font/.code=%
RenewDocumentCommanddquoteattribfonthook#1
,
dquote/.code=%
tikzset%
/cfr-dquote/.cd,
#1
,
/cfr-dquote/quote style/.style=align=justify, color=blue!50!black,
/cfr-dquote/quote/.style=/cfr-dquote/quote style, font=dquotetextfonthook,
/cfr-dquote/attrib/.style=/cfr-dquote/quote style, font=dquoteattribfonthook,
/cfr-dquote/quote mark/.style=color=cfrdquotecolor, opacity=cfrdquoteopacity, font=cfrdquotesize, scale=cfrdquotescale,
/cfr-dquote/.cd,
width/.store in=cfrdquotewidth,
text/.store in=cfrdquotetext,
attribution/.store in=cfrdquoteattrib,
width=120mm,
text=Does dim o gwbl yn y fan hon!,
attribution=Neb,
marks/.code=%
tikzset%
/cfr-dquote/quote marks/.cd,
#1
,
quote marks/size/.store in=cfrdquotesize,
quote marks/scale/.store in=cfrdquotescale,
quote marks/color/.store in=cfrdquotecolor,
quote marks/opacity/.store in=cfrdquoteopacity,
marks=
size=Huge,
scale=4,
color=blue!50!cyan,
opacity=.25,
,
% END defaults
% BEGIN defn dquote
NewDocumentCommanddquote O 120mm +m m %
tikzset%
external/export next=false,
/cfr-dquote/.cd,
width=#1,
text=setlengthparskipcfrdquoteparskipsetlengthparindentcfrdquoteparindent#2,
attribution=#3
%
inputcfr-dquote%
% END defn dquote
endinput
endfilecontents
beginfilecontentscfr-dquote.tex
% !TEX TS-program = pdflatex
% !TEX encoding = UTF-8 Unicode
% arara: pdflatex: synctex: true
%BEGIN preamble
csname standaloneignoreendcsname
pdfminorversion=7
PassOptionsToPackagergbxcolor
RequirePackagesvn-prov
ProvidesFileSVN$Id: cfr-dquote.tex 7800 2018-07-20 01:58:28Z cfr $
documentclass[tikz,12pt]standalone
usetikzlibrarycalc,positioning,backgrounds
usepackagepifont,biblatex
% END preamble
begindocument%
begintikzpicture[node distance=0pt]
node (quotation) [/cfr-dquote/quote, text width=cfrdquotewidth] cfrdquotetext;
node (attrib) [/cfr-dquote/attrib, below=of quotation, text width=cfrdquotewidth] cfrdquoteattrib;
node (qlhs) [left=of quotation.north west, /cfr-dquote/quote mark, xshift=.25em, yshift=.25em, anchor=north east] ding123;
node (qrhs) [right=of quotation.south east, /cfr-dquote/quote mark, xshift=-.25em, yshift=-.75em, anchor=south west] ding124;
pgfresetboundingbox
useasboundingbox (attrib.south -| qlhs.west) rectangle (quotation.north -| qrhs.east);
endtikzpicture%
enddocument
endfilecontents
documentclass[a4paper,british]article
usepackage[utf8]inputenc
usepackagegeometry,babel,csquotes
usepackagecfr-lm
usepackagecfr-dquote
MakeAutoQuote‘’
MakeAutoQuote*“”
begindocument
tikzset%
dquote text font=fontfamilyLobsterTwo-LFselectfontLargeupshape,
dquote attrib font=fontfamilyLobsterTwo-LFselectfontHugeitshape,
dquote=
quote style/.style=align=justify, fill=blue!50!cyan, fill opacity=.2, text opacity=1, text=blue!15!darkgray,
marks=
size=Huge,
scale=4,
color=blue!50!darkgray,
opacity=.5,
,
,
%
dquote%
‘Come, we shall have some fun now!’ thought Alice. ‘I'm glad they've begun asking riddles --- I believe I can guess that,’ she added aloud.
‘Do you mean that you think you can find out the answer to it?’ said the March Hare.
‘Exactly so,’ said Alice.
‘Then you should say what you mean,’ the March Hare went on.
‘I do,’ Alice hastily replied; ‘at least --- at least I mean what I say --- that's the same thing, you know.’
‘Not the same thing a bit!’ said the Hatter. ‘Why, you might just as well say that ‘I see what I eat’ is the same thing as ‘I eat what I see’!’
‘You might just as well say,’ added the March Hare, ‘that ‘I like what I get’ is the same thing as ‘I get what I like’!’
‘You might just as well say,’ added the Dormouse, which seemed to be talking in its sleep, ‘that ‘I breathe when I sleep’ is the same thing as ‘I sleep when I breathe’!’
Lewis Carroll
enddocument
Had I known about this question, I would not have written cfr-dquote
. However, I didn't, so I did. Here's a lightly modified version of my package for public consumption or rejection.
The package defines a command, dquote[<dimension>]<long text><short text
which is intended to be used so that <dimension>
is the width desired, <long text>
is the quotation and <short text>
is the attribution.
The package is based on TikZ and the appearance can be customised using the usual key-value interface. For example, I've never used this with a coloured background to the quotation, but that is easy to achieve by simply altering quote style
.
For example,
documentclass[a4paper,british]article
usepackage[utf8]inputenc
usepackagegeometry,babel,csquotes
usepackagecfr-lm
usepackagecfr-dquote
MakeAutoQuote‘’
MakeAutoQuote*“”
begindocument
tikzset%
dquote text font=fontfamilyLobsterTwo-LFselectfontLargeupshape,
dquote attrib font=fontfamilyLobsterTwo-LFselectfontHugeitshape,
dquote=
quote style/.style=align=justify, fill=blue!50!cyan, fill opacity=.2, text opacity=1, text=blue!15!darkgray,
marks=
size=Huge,
scale=4,
color=blue!50!darkgray,
opacity=.5,
,
,
%
dquote%
‘Come, we shall have some fun now!’ thought Alice. ‘I'm glad they've begun asking riddles --- I believe I can guess that,’ she added aloud.
‘Do you mean that you think you can find out the answer to it?’ said the March Hare.
‘Exactly so,’ said Alice.
‘Then you should say what you mean,’ the March Hare went on.
‘I do,’ Alice hastily replied; ‘at least --- at least I mean what I say --- that's the same thing, you know.’
‘Not the same thing a bit!’ said the Hatter. ‘Why, you might just as well say that ‘I see what I eat’ is the same thing as ‘I eat what I see’!’
‘You might just as well say,’ added the March Hare, ‘that ‘I like what I get’ is the same thing as ‘I get what I like’!’
‘You might just as well say,’ added the Dormouse, which seemed to be talking in its sleep, ‘that ‘I breathe when I sleep’ is the same thing as ‘I sleep when I breathe’!’
Lewis Carroll
enddocument
produces the following output
The package consists of two files, cfr-dquote.sty
and cfr-dquote.tex
. In theory, the latter can be compiled alone, since it uses the standalone
class, but don't be tempted to use it this way - that's just to make tweaks and debugging easier.
Complete code:
beginfilecontentscfr-dquote.sty
% !TEX encoding = UTF-8 Unicode
% cfr-dquote.sty
NeedsTeXFormatLaTeX2e% LaTeX 2.09 can't be used (nor non-LaTeX)
[1994/12/01]% LaTeX date must December 1994 or later
RequirePackagesvn-prov
ProvidesPackageSVN$Id: cfr-dquote.sty 7799 2018-07-20 01:52:15Z cfr $
RequirePackagexcolor,pifont,standalone,xparse,tikz
usetikzlibrarycalc,positioning,backgrounds
IfFileExiststikzlibrarypicfix.code.texusetikzlibrarypicfix
IfFileExiststikzlibrarycfrexternal.code.texusetikzlibrarycfrexternalusetikzlibraryexternal
NewDocumentCommanddquotetextfonthooknormalfontlarge
NewDocumentCommanddquoteattribfonthooknormalfontnormalsize
AtBeginDocument%
newlengthcfrdquoteparskipsetlengthcfrdquoteparskipparskip%
newlengthcfrdquoteparindentsetlengthcfrdquoteparindentparindent
% BEGIN defaults
tikzset%
dquote text font/.code=%
RenewDocumentCommanddquotetextfonthook#1
,
dquote attrib font/.code=%
RenewDocumentCommanddquoteattribfonthook#1
,
dquote/.code=%
tikzset%
/cfr-dquote/.cd,
#1
,
/cfr-dquote/quote style/.style=align=justify, color=blue!50!black,
/cfr-dquote/quote/.style=/cfr-dquote/quote style, font=dquotetextfonthook,
/cfr-dquote/attrib/.style=/cfr-dquote/quote style, font=dquoteattribfonthook,
/cfr-dquote/quote mark/.style=color=cfrdquotecolor, opacity=cfrdquoteopacity, font=cfrdquotesize, scale=cfrdquotescale,
/cfr-dquote/.cd,
width/.store in=cfrdquotewidth,
text/.store in=cfrdquotetext,
attribution/.store in=cfrdquoteattrib,
width=120mm,
text=Does dim o gwbl yn y fan hon!,
attribution=Neb,
marks/.code=%
tikzset%
/cfr-dquote/quote marks/.cd,
#1
,
quote marks/size/.store in=cfrdquotesize,
quote marks/scale/.store in=cfrdquotescale,
quote marks/color/.store in=cfrdquotecolor,
quote marks/opacity/.store in=cfrdquoteopacity,
marks=
size=Huge,
scale=4,
color=blue!50!cyan,
opacity=.25,
,
% END defaults
% BEGIN defn dquote
NewDocumentCommanddquote O 120mm +m m %
tikzset%
external/export next=false,
/cfr-dquote/.cd,
width=#1,
text=setlengthparskipcfrdquoteparskipsetlengthparindentcfrdquoteparindent#2,
attribution=#3
%
inputcfr-dquote%
% END defn dquote
endinput
endfilecontents
beginfilecontentscfr-dquote.tex
% !TEX TS-program = pdflatex
% !TEX encoding = UTF-8 Unicode
% arara: pdflatex: synctex: true
%BEGIN preamble
csname standaloneignoreendcsname
pdfminorversion=7
PassOptionsToPackagergbxcolor
RequirePackagesvn-prov
ProvidesFileSVN$Id: cfr-dquote.tex 7800 2018-07-20 01:58:28Z cfr $
documentclass[tikz,12pt]standalone
usetikzlibrarycalc,positioning,backgrounds
usepackagepifont,biblatex
% END preamble
begindocument%
begintikzpicture[node distance=0pt]
node (quotation) [/cfr-dquote/quote, text width=cfrdquotewidth] cfrdquotetext;
node (attrib) [/cfr-dquote/attrib, below=of quotation, text width=cfrdquotewidth] cfrdquoteattrib;
node (qlhs) [left=of quotation.north west, /cfr-dquote/quote mark, xshift=.25em, yshift=.25em, anchor=north east] ding123;
node (qrhs) [right=of quotation.south east, /cfr-dquote/quote mark, xshift=-.25em, yshift=-.75em, anchor=south west] ding124;
pgfresetboundingbox
useasboundingbox (attrib.south -| qlhs.west) rectangle (quotation.north -| qrhs.east);
endtikzpicture%
enddocument
endfilecontents
documentclass[a4paper,british]article
usepackage[utf8]inputenc
usepackagegeometry,babel,csquotes
usepackagecfr-lm
usepackagecfr-dquote
MakeAutoQuote‘’
MakeAutoQuote*“”
begindocument
tikzset%
dquote text font=fontfamilyLobsterTwo-LFselectfontLargeupshape,
dquote attrib font=fontfamilyLobsterTwo-LFselectfontHugeitshape,
dquote=
quote style/.style=align=justify, fill=blue!50!cyan, fill opacity=.2, text opacity=1, text=blue!15!darkgray,
marks=
size=Huge,
scale=4,
color=blue!50!darkgray,
opacity=.5,
,
,
%
dquote%
‘Come, we shall have some fun now!’ thought Alice. ‘I'm glad they've begun asking riddles --- I believe I can guess that,’ she added aloud.
‘Do you mean that you think you can find out the answer to it?’ said the March Hare.
‘Exactly so,’ said Alice.
‘Then you should say what you mean,’ the March Hare went on.
‘I do,’ Alice hastily replied; ‘at least --- at least I mean what I say --- that's the same thing, you know.’
‘Not the same thing a bit!’ said the Hatter. ‘Why, you might just as well say that ‘I see what I eat’ is the same thing as ‘I eat what I see’!’
‘You might just as well say,’ added the March Hare, ‘that ‘I like what I get’ is the same thing as ‘I get what I like’!’
‘You might just as well say,’ added the Dormouse, which seemed to be talking in its sleep, ‘that ‘I breathe when I sleep’ is the same thing as ‘I sleep when I breathe’!’
Lewis Carroll
enddocument
answered Jul 20 '18 at 2:28
cfrcfr
158k8191390
158k8191390
add a comment |
add a comment |
I know that this is old, but I may as well share my simple attempt.
Note: requires usepackagexcolor
newcommandquotebox[1]begincenterfcolorboxwhiteblue!15!gray!15beginminipage0.9linewidthvspace10ptcenterbeginminipage0.8linewidthspaceHuge``#1hspace1.5embreaknullHugehfill''endminipagesmallbreakendminipageendcenter
Example:
New contributor
add a comment |
I know that this is old, but I may as well share my simple attempt.
Note: requires usepackagexcolor
newcommandquotebox[1]begincenterfcolorboxwhiteblue!15!gray!15beginminipage0.9linewidthvspace10ptcenterbeginminipage0.8linewidthspaceHuge``#1hspace1.5embreaknullHugehfill''endminipagesmallbreakendminipageendcenter
Example:
New contributor
add a comment |
I know that this is old, but I may as well share my simple attempt.
Note: requires usepackagexcolor
newcommandquotebox[1]begincenterfcolorboxwhiteblue!15!gray!15beginminipage0.9linewidthvspace10ptcenterbeginminipage0.8linewidthspaceHuge``#1hspace1.5embreaknullHugehfill''endminipagesmallbreakendminipageendcenter
Example:
New contributor
I know that this is old, but I may as well share my simple attempt.
Note: requires usepackagexcolor
newcommandquotebox[1]begincenterfcolorboxwhiteblue!15!gray!15beginminipage0.9linewidthvspace10ptcenterbeginminipage0.8linewidthspaceHuge``#1hspace1.5embreaknullHugehfill''endminipagesmallbreakendminipageendcenter
Example:
New contributor
New contributor
answered 6 mins ago
Ender - Joshua PritskerEnder - Joshua Pritsker
1
1
New contributor
New contributor
add a comment |
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');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
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%2f16964%2fblock-quote-with-big-quotation-marks%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');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
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');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
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');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
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
1
JFYI: See now also Block quote with big quotation marks and opening quote on bottom.
– Speravir
Feb 21 '13 at 3:32