Archiv verlassen und diese Seite im Standarddesign anzeigen : Veranschaulichung des Textsatzes mit Boxen
Hallo zusammen!
Zur Veranschaulichung, daß TeX den Text aus Boxen zusammensetzt, möchte ich - wie es in einigen Büchern zu (La)TeX zu finden ist - diese Boxen, mit und ohne Glyphen gefüllt, darstellen. Gibt es dafür ein Paket/einen Befehl in LaTeX, das/der dieses übernehmen kann, oder muß ich das selbst bewerkstelligen, z. B. so:
\setlength{\fboxsep}{.0pt}
\fbox{\fbox{T}\fbox{e}\fbox{x}\fbox{t}\fbox{-}\fbox{B}\fbox{e}\fbox{i}\fbox{s}\fbox{p}\fbox{i}\ fbox{e}\fbox{l}}
?
Jens
Meinst Du so etwas:
%http://mrunix.de/forums/showthread.php?t=59656
\listfiles
\documentclass{scrartcl}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\def\boxI#1{{\fboxsep=1pt{\fbox{#1}}}}
\begin{document}
\boxI{T}\boxI{e}\boxI{x}\boxI{-}\boxI{B}\boxI{e}\boxI{i}\boxI{s}\boxI{p}\boxI{i}\ boxI{e}\boxI{l}\boxI{!}
\end{document}
Nähere Erklärungen siehe Link im Code.
Gruß, Sepp.-
Na ja, das bringt ja kaum eine Vereinfachung gegenüber fantex' eigener Idee. Man muss immer noch jeden Buchstaben einzeln mit einem Befehl versehen, und kürzer ist er auch nicht.
Stefan_K
23-04-2011, 13:09
Hallo Jens,
hier gibt es ein paar Tipps und Links, auch auf ein Paket hierfür: How can I visualize boxes (http://tex.stackexchange.com/q/2083/213).
Viele Grüße,
Stefan
Zur Veranschaulichung, daß TeX den Text aus Boxen zusammensetzt, möchte ich - wie es in einigen Büchern zu (La)TeX zu finden ist - diese Boxen, mit und ohne Glyphen gefüllt, darstellen. Gibt es dafür ein Paket/einen Befehl in LaTeX, das/der dieses übernehmen kann, oder muß ich das selbst bewerkstelligen, z. B. so:
\setlength{\fboxsep}{.0pt}
\fbox{\fbox{T}\fbox{e}\fbox{x}\fbox{t}\fbox{-}\fbox{B}\fbox{e}\fbox{i}\fbox{s}\fbox{p}\fbox{i}\ fbox{e}\fbox{l}}
?
das kannst du ohne Paket mit ConTeXt machen, was auf deinem System installiert sein sollte:
\starttext
\processisolatedchars{Einige Wörter mit \ConTeXt}\ruledhbox\par
\processisolatedchars{Einige Wörter mit \ConTeXt}\framed
\stoptext
Ausgabe:
http://perce.de/pub/zz.png
Herbert
hier gibt es ein paar Tipps und Links, auch auf ein Paket hierfür: How can I visualize boxes (http://tex.stackexchange.com/q/2083/213).
was denn für ein Paket?
Herbert
Zuerst einmal vielen Dank für Eure Antworten!
Das, was Herbert Voß als Lösung zeigt, ist genau das, was ich möchte.
Ich denke, da die Beispiele, die ich in Boxen setzen möchte, nicht sehr umfangreich sind, werde ich es bei der Umsetzung mit den \fbox-Befehlen belassen.
ConTeXt ist in meiner MiKTeX-Installation nicht eingebaut und ich habe mich damit auch bisher noch nicht beschäftigt. Ist die Installation bzw. Einbindung von ConTeXt in MiKTeX kompliziert und welches sind die Vorteile von ConTeXt gegen über LaTeX?
Gruß, Jens
ConTeXt ist in meiner MiKTeX-Installation nicht eingebaut und ich habe mich damit auch bisher noch nicht beschäftigt. Ist die Installation bzw. Einbindung von ConTeXt in MiKTeX kompliziert und welches sind die Vorteile von ConTeXt gegen über LaTeX?
nein, einfach im Paketmanager context auswählen, dann obiges Beispiel als "demo.tex" speichern und dann "context demo.tex" laufen lassen, was dann eine "demo.pdf" liefern sollte.
Herbert
Hallo Herbert,
vielen Dank für Deine Nachricht.
Leider kann bei mir der Befehl "context" nicht ausgeführt werden. In meinem MiKTex sind einige Pakete mit dem Namen "context-..." installiert (siehe angehängte .jpg-Datei). Eine Datei namens context.exe oder context.bat finde ich auch nirgendwo. Wird ConTeXt vielleicht in MiKTeX z. Z. nicht unterstütz?
Frohe Ostern und Gruß
Jens
P.S.: Kannst Du vielleicht einmal in diesen thread reinschauen?
http://www.mrunix.de/forums/showthread.php?t=70944
Leider kann bei mir der Befehl "context" nicht ausgeführt werden. In meinem MiKTex sind einige Pakete mit dem Namen "context-..." installiert (siehe angehängte .jpg-Datei). Eine Datei namens context.exe oder context.bat finde ich auch nirgendwo. Wird ConTeXt vielleicht in MiKTeX z. Z. nicht unterstütz?
ich benutze Linux mit TeXLive, da geht es ohne weitere Installationen.
P.S.: Kannst Du vielleicht einmal in diesen thread reinschauen?
http://www.mrunix.de/forums/showthread.php?t=70944
siehe dortige Antwort.
Herbert
v_neises
24-04-2011, 08:28
Versuche es mal mit texexec demo.tex
Hallo!
Nein, auch texexec ist in meinem System unbekannt.
Jens
u_fischer
24-04-2011, 10:41
Das Miktexpaket heißt einfach "context". Es funktioniert aber nur mit miktex 2.9.
Das Miktexpaket heißt einfach "context". Es funktioniert aber nur mit miktex 2.9.
Vielen Dank für den Hinweis. Dann werde ich wohl mal upgraden.
Gruß
Jens
Stefan_K
24-04-2011, 14:42
Hallo Herbert,
was denn für ein Paket?
ConTeXt natürlich, wie dort ein Link mit der Wortwahl verweist und wie Hans Hagen es im verlinkten Text selbst bezeichnet, als Makro-Paket.
Viele Grüße,
Stefan
mechanicus
24-04-2011, 15:53
Hi,
eine Möglichkeit mit LaTeX
\documentclass{article}
\usepackage{calc}
\makeatletter
\newcommand*\myboxsys{}
\def\myboxsys#1{\scanword #1\@nil}
\def\scanword{\afterassignment\@check@end\let\char = }
\def\@check@end{%
\ifx\char\@nil%
\let\next=\relax%
\else%
\begingroup%
\fboxsep=1pt%
\fbox{%
\vline%
\@width 0pt%
\@height \ht\strutbox%
\@depth \dp\strutbox%
\char}%
\endgroup%
\let\next=\scanword%
\fi
\next%
}
\makeatother
\begin{document}
\myboxsys{Hallo}
\end{document}
Gruß
Marco
eine Möglichkeit mit LaTeX
oder die andere Variante:
\documentclass{article}
\makeatletter
\def\myboxsys#1{\begingroup
\fboxsep=0pt\expandafter\scanwords#1 \@nil}
\def\scanwords#1 #2\@nil{%
\scanchars#1\@nil%
\ifx\relax#2\relax\endgroup\else\fbox{\space}\scan words#2\@nil\fi}
\def\scanchars#1#2\@nil{%
\fbox{#1}%
\ifx\relax#2\relax\else\scanchars#2\@nil\fi}
\makeatother
\begin{document}
\myboxsys{Jetzt kommt hier ein ganzer Satz}
\end{document}
Herbert
Hallo Herbert, hallo Marco,
vielen Dank für Eure Antworten und Eure Mühe.
Herberts Lösung ist genau das, was ich haben möchte. Super!
Habt Ihr Literaturtips zu (La)TeX -- vielleicht mit erklärten Beispielen --, mit deren Hilfe ich lernen kann, solchen Code nachzuvollziehen oder gar selbst zu erstellen?
Gruß
Jens
mechanicus
25-04-2011, 10:59
Herberts Lösung ist genau das, was ich haben möchte. Super!
Bei mir musst du nur \vline rausnehmen :p
\documentclass{article}
\usepackage{calc}
\makeatletter
\newcommand*\myboxsys{}
\def\myboxsys#1{\scanword #1\@nil}
\def\scanword{\afterassignment\@check@end\let\char = }
\def\@check@end{%
\ifx\char\@nil%
\let\next=\relax%
\else%
\begingroup%
\fboxsep=0pt%
\fbox{\char}%
\endgroup%
\let\next=\scanword%
\fi
\next%
}
\makeatother
\begin{document}
\myboxsys{Jetzt kommt hier ein ganzer Satz}
\end{document}
Gruß
Marco
mechanicus
25-04-2011, 11:03
Habt Ihr Literaturtips zu (La)TeX -- vielleicht mit erklärten Beispielen --, mit deren Hilfe ich lernen kann, solchen Code nachzuvollziehen oder gar selbst zu erstellen
Darauf warte ich auch. Ich würde mich freuen, wenn es soetwas gäbe. Natürlich gibt es gewisse Onlineliteratur, die den Code erklärt, aber in meinen Augen nicht benutzerfreundlich.
Gruß
Marco
Hallo Marco,
Du hast recht; ohne \vline liefert Dein Code ebenfalls das gewünschte Ergebnis (leider funktionieren Umlaute nicht, auch nicht in der Schreibweise "u. Ist aber gar nicht wichtig). Wie schon gesagt, kann ich solchen Code mangels Kenntnissen nicht nachvollziehen.
Darauf warte ich auch. Ich würde mich freuen, wenn es soetwas gäbe. Natürlich gibt es gewisse Onlineliteratur, die den Code erklärt, aber in meinen Augen nicht benutzerfreundlich.
Wo konntest Du denn Deine Kenntnisse erwerben?
Gruß
Jens
mechanicus
25-04-2011, 12:03
Du hast recht; ohne \vline liefert Dein Code ebenfalls das gewünschte Ergebnis (leider funktionieren Umlaute nicht, auch nicht in der Schreibweise "u. Ist aber gar nicht wichtig). Wie schon gesagt, kann ich solchen Code mangels Kenntnissen nicht nachvollziehen.
Das liegt aber nicht am Code. Lade mal inputenc sowie fontenc und dann funktioniert es.
Wo konntest Du denn Deine Kenntnisse erwerben?
Hier und da einige Dokumente lesen -- habe natürlich auch diverse Bücher (Mit Masse die von Herbert :cool: ). Aber im Schwerpunkt sehe ich das Forum. Schwierige Themen werden häufig auch beantwortet und dann gibt es auch noch nette Leute, die den Code erklären, so dass ein Reproduzieren möglich ist.
Irgendwann schaust du auch mal in den Quelltest diverser Pakete und verstehst auch diese.
Gruß
Marco
Ich habe
\usepackage[T1]{fontenc}
und
\usepackage[utf8x]{inputenc}
in der Präambel stehen. LaTeX gibt eine Fehlermeldung aus. Stelle ich die Inputcodierung z. B. auf Latin1 oder cp1252, gibt es keine Fehlermeldung, die Zeichen werden aber falsch dargestellt (für ein kleines ä bekomme ich ein großes A mit einer Tilde darüber, gefolgt von einem anderen komischen Zeichen).
Im normalen Fließtext werden die Umlaute korrekt gesetzt.
Aber wie gesagt: Ist gar nicht wichtig!
Danke nochmal und Gruß
Jens
Stefan_K
25-04-2011, 13:20
Hallo Jens,
LaTeX gibt eine Fehlermeldung aus.
im Allgemeinen lässt sich mehr sagen, wenn Du eine Fehlermeldung auch hier zitierst. ;)
Viele Grüße,
Stefan
Fantex, welche Kodierung hast du im Editor eingestellt? Sie muss mit der bei inputenc übereinstimmen.
Das liegt aber nicht am Code. Lade mal inputenc sowie fontenc und dann funktioniert es.
Da Ü intern umgesetzt wird dürfte es mit unserem Code nicht gehen.
denn die Umlaute sind ja aktive Zeichen. Da müssen wir mehr investieren :-)
Herbert
mechanicus
25-04-2011, 16:30
Da Ü intern umgesetzt wird dürfte es mit unserem Code nicht gehen.
denn die Umlaute sind ja aktive Zeichen. Da müssen wir mehr investieren :-)
oder mit newtoks arbeiten :rolleyes:
mechanicus
25-04-2011, 19:09
Hi,
es geht sogar einfacher. Es gibt ja für fast alles Pakete:
\setcounter{errorcontextlines}{999}
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{soul}
\makeatletter
\DeclareRobustCommand*\myboxsys{%
\def\SOUL@everytoken{\fboxsep0pt\fbox{\the\SOUL@to ken}}%
\def\SOUL@everyspace##1{\fboxsep0pt\fbox\space}%
\SOUL@}
\makeatother
\begin{document}
\myboxsys{Ber"ucksichtige mal Sonderzeichen: "u "o "a "s}
\end{document}
Da soul ebenfalls mit toks arbeitet, ist eine direkte Eingabe von Sonderzeichen nicht möglich.
Gruß
Marco
es geht sogar einfacher. Es gibt ja für fast alles Pakete:
Da soul ebenfalls mit toks arbeitet, ist eine direkte Eingabe von Sonderzeichen nicht möglich.
sehr gut!
soul kann sowieso nicht mit UTF8 umgehen. Es könnte aber sein,
dass es mit latin1 und äöü direkt gehen könnte ...
Herbert
Hallo!
Fantex, welche Kodierung hast du im Editor eingestellt? Sie muss mit der bei inputenc übereinstimmen.
Ja, ich hatte die Kodierungen übereinstimmend eingestellt.
Mit Marcos letztem Beispiel gehen sogar Umlaute und das scharfe s. Super!
Vielen Dank nochmal an alle Beteiligten!
Gruß
Jens
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.