From 30d52357546ededbdbae15fca17217657e83c35c Mon Sep 17 00:00:00 2001 From: Diomidis Spinellis Date: Mon, 17 Mar 2008 08:42:35 +0000 Subject: [PATCH] Add banner. --- index.html | 2 +- umlgraph-banner.png | Bin 0 -> 6248 bytes web/build/umlgraph-banner.png | Bin 0 -> 6248 bytes web/index.html | 2 +- web/umlgraph-banner.png | Bin 0 -> 6248 bytes 5 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 umlgraph-banner.png create mode 100644 web/build/umlgraph-banner.png create mode 100644 web/umlgraph-banner.png diff --git a/index.html b/index.html index db99f14..572c463 100644 --- a/index.html +++ b/index.html @@ -10,8 +10,8 @@ -

UMLGraph dds

UMLGraph - Declarative Drawing of UML Diagrams

+UMLGraph banner UMLGraph allows the declarative specification and drawing of UML class and sequence diagrams. diff --git a/umlgraph-banner.png b/umlgraph-banner.png new file mode 100644 index 0000000000000000000000000000000000000000..cc044422d9d00f340d3debd870149296431ba41c GIT binary patch literal 6248 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 SUARdA0000 -

UMLGraph dds

UMLGraph - Declarative Drawing of UML Diagrams

+UMLGraph banner UMLGraph allows the declarative specification and drawing of UML class and sequence diagrams. diff --git a/web/umlgraph-banner.png b/web/umlgraph-banner.png new file mode 100644 index 0000000000000000000000000000000000000000..cc044422d9d00f340d3debd870149296431ba41c GIT binary patch literal 6248 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 SUARdA0000