-1

在 .net/c# 中图像更改为今天的日期

希望生成用于日历图标的图像

希望这不是太难??

更新 - 希望为桌面/WPF 执行此操作,但可以采用其他 .net 代码并根据需要进行更改

对不起打扰了,我做商业应用,不擅长图形!

4

2 回答 2

3

编辑
此答案是在 OP 解释所需平台之前给出的。我选择保留它,因为它有助于其他希望在 WEB 世界中实现相同目标的人。


由于OP没有说这是针对什么平台的,我将抛出一个WEB解决方案。

就我个人而言,我讨厌在服务器上构建任何可以卸载到客户端的东西。这是实现所要求的CSS3方法。

<style>
/* Calendar */

.calendar {
    margin: 10px;
    background: #fff;
    width:176px;
    height:176px;
}

.calendar .header {
    -webkit-border-top-left-radius: 30px;
    -webkit-border-top-right-radius: 30px;
    background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#EEC4C4), to(#521B1C), color-stop(.92,#da3434),color-stop(.1,#ef9fa5));
    height: 50px;
    width: 176px;
    -webkit-box-shadow: inset 0px 2px 1px rgba(255, 255, 255, 0.4);
}

.calendar p.weekday {
    color: #fff;
    font-weight: bold;
    text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.7);
    width: 176px;
    line-height: 50px;
    font-size: 25px;
    text-align: center;
}

.calendar p.daynumber {
    color: #000;
    font-weight: bold;
    text-shadow: 0px 1px 0px #fff;
    width: 176px;
    line-height: 126px;
    font-size: 130px;
    text-align: center;
}

.calendar .paper {
    -webkit-border-bottom-left-radius: 30px;
    -webkit-border-bottom-right-radius: 30px;
    background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#7A7A7A), to(#EDEDED), color-stop(.05,#BFBFBF),color-stop(.2,#E3E3E3));
    height: 126px;
    width: 176px;
}​
</style>

<div class="calendar icon">
        <div class="header">
            <p class="weekday">
                Monday
            </p>
        </div>
        <div class="paper">
            <p class="daynumber">
                7
            </p>
        </div>
</div>

笔记:

您仍然需要退回到 PNG 文件(最好是 sprite)并在任何非 webkit 浏览器中覆盖工作日和日期。

免责声明:

这些代码都不是我的,可以在
http://graphicpeel.com/cssiosicons找到

于 2012-05-17T03:42:12.340 回答
1

这不准确,但很接近:

<Window x:Class="WpfApplication1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:System="clr-namespace:System;assembly=mscorlib"
        Title="MainWindow" Height="350" Width="525">
    <Window.Resources>
        <DataTemplate x:Key="CalendarTemplate">
            <Grid Width="220" Height="220">
                <Grid.Effect>
                    <DropShadowEffect Opacity="0.515" ShadowDepth="8" Direction="278" BlurRadius="28"/>
                </Grid.Effect>
                <Grid.RowDefinitions>
                    <RowDefinition Height="64"/>
                    <RowDefinition/>
                </Grid.RowDefinitions>
                <Border Background="Red" CornerRadius="25,25,0,0" BorderBrush="Gray" BorderThickness="1">
                    <TextBlock Text="{Binding DayOfWeek}" HorizontalAlignment="Center" VerticalAlignment="Center" Foreground="White" FontSize="32" FontFamily="Arial"/>
                </Border>
                <Border Grid.Row="1" Background="White" BorderBrush="Gray" BorderThickness="1" CornerRadius="0,0,25,25">
                    <TextBlock Text="{Binding Day}" HorizontalAlignment="Center" VerticalAlignment="Center" FontFamily="Arial" FontSize="140" FontWeight="Bold"/>
                </Border>
            </Grid>
        </DataTemplate>
    </Window.Resources>
    <Grid>
        <ContentControl Content="{Binding Source={x:Static System:DateTime.Now}}" ContentTemplate="{DynamicResource CalendarTemplate}"/>
    </Grid>
</Window>

在此处输入图像描述

于 2012-05-17T04:21:16.377 回答